1. ホーム
  2. java

Spring boot runs with Error creating bean with name 'entityManagerFactory' defined in class path resource

2022-02-13 08:03:42

この問題はやはり、ドミアンエンティティクラスとデータベースを見つけ、データベースが対応するデータベーステーブルを持っていることを確認することがほとんどです。 BeansCreationException: 名前を持つビーンの作成エラー 'entityManagerFactory'です。 クラスパスリソース [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaAutoConfiguration.class] で定義されています。init メソッドの呼び出しに失敗しました。ネストされた例外は javax.persistence.PersistenceException です。[PersistenceUnit: default] です。 Hibernate SessionFactoryを構築できない
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1628) ~[spring-beans-4.3.10.RELEASE.jar:4.3.10.RELEASE] のようになります。
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:555) ~[spring-beans-4.3.10.RELEASE.jar:4.3.10.RELEASE].
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java: 483) ~[spring-beans-4.3.10.RELEASE.jar:4.3.10.RELEASE] ←クリックすると拡大します。
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.10.RELEASE.jar:4.3.10.RELEASE] このセクションでは、AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)を使用する方法について説明します。
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[ spring-beans-4.3.10.RELEASE.jar:4.3.10.RELEASE] のようになります。
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.10. RELEASE.jar:4.3.10.RELEASE].
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.10.RELEASE .jar:4.3.10.RELEASE] となります。
    at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1078) ~[spring-context-4.3 .10.RELEASE.jar:4.3.10.RELEASE] のようになります。
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java: 857) ~[spring-context-4.3.10.RELEASE.jar:4.3.10.RELEASE].
    org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) ~[spring-context-4.3. 10.RELEASE.jar:4.3.10.RELEASE] にて確認できます。
    at org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) ~[spring- boot-1.5.6.RELEASE.jar:1.5.6.RELEASE] のようになります。
    SpringApplication.refresh(SpringApplication.java:693) at org.springframework.boot [spring-boot-1.5.6.RELEASE.jar:1.5.6.RELEASE].
    at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360) [spring-boot-1.5.6.RELEASE.jar:1.5.6. RELEASE] のようになります。
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:303) [spring-boot-1.5.6.RELEASE.jar:1.5.6.].
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1118) [spring-boot-1.5.6.RELEASE.jar:1.5.6.RELEASE] のようになります。
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:1107) [spring-boot-1.5.6.RELEASE.jar:1.5.6.RELEASE].
    at com.leaveword.DemoApplication.main(DemoApplication.java:9) [クラス/:na].
原因:javax.persistence.PersistenceException: [PersistenceUnit: default] Hibernate SessionFactoryを構築できません。
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.persistenceException(EntityManagerFactoryBuilderImpl.java:954) ~[ hibernate-entitymanager-5.0.12.Final.jar:5.0.12.Final ]であること。
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:882) ~[hibernate- entitymanager-5.0.12.Final.jar:5.0.12.Final] となります。
    at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:60) ~[spring-orm-4.3.10.RELEASE.jar:4.3.10.RELEASE] でのことです。
    at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:353) ~[spring-orm-4.3.10.RELEASE.jar:4.3.10.RELEASE] ※英語版のみ。
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean. java:370) ~[spring-orm-4.3.10.RELEASE.jar:4.3.10.RELEASE] このようになります。
    at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:359) ~[ spring-orm-4.3.10.RELEASE.jar:4.3.10.RELEASE] のように、このメソッドを使用します。
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1687) ~[spring-beans-4.3.10.RELEASE.jar:4.3.10.RELEASE] このメソッドでは、BeanFactoryは、AbstractAutowireCapableBeanFactory.java:1687のメソッドを使用します。
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory. java:1624) ~[spring-beans-4.3.10.RELEASE.jar:4.3.10.RELEASE].
    ... 共通16フレーム省略
原因: org.hibernate.tool.schema.spi.SchemaManagementException.SchemaManagementException を発生させました。JDBC ターゲット [alter table word add column content varchar(20000) COMMENT 'Message content' default 'No content' not null] に対してスキーマ管理を実行できません。
    at org.hibernate.tool.schema.internal.TargetDatabaseImpl.accept(TargetDatabaseImpl.java:59) ~[hibernate-core-5.0.12.Final.jar:5.0.12 Final] のようになります。
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.applySqlString(SchemaMigratorImpl.java:431) ~[hibernate-core-5.0.12.Final.jar:5.0.12.Final].
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.applySqlStrings(SchemaMigratorImpl.java:449) ~[hibernate-core-5.0.12.Final. jar:5.0.12.Final].
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.migrateTable(SchemaMigratorImpl.java:253) ~[hibernate-core-5.0.12.Final.jar :5.0.12.Final] このセクションでは、SchemaMigratorImpl.migrateBaseを使用する際の注意点について説明します。
    org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigrationToTargets(SchemaMigratorImpl.java:170) ~[hibernate-core-5.0.12.Final.jar:5.0.12.Final] にて実施。
    at org.hibernate.tool.schema.internal.SchemaMigratorImpl.doMigration(SchemaMigratorImpl.java:60) ~[hibernate-core-5.0.12.Final.jar: 5.0.12.Final] なお、上記はあくまで参考です。
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:134) ~[hibernate-core-5.0.12.Final.jar:5.0.12.] となります。
    at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:101) ~[hibernate-core-5.0.12.Final.jar:5.0.12.Final] のようになります。
    at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:472) ~[hibernate-core-5.0.12.Final.jar:5.0.12. Final] ※本記事では、SessionFactoryImpl.java.infoを使用しています。
    at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:444) ~[hibernate-core-5.0.12.Final.jar :5.0.12.Final] ←クリックすると拡大します。
    at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:879) ~[hibernate- entitymanager-5.0.12.Final.jar:5.0.12.Final] ※本項目では、EntityManagerFactoryBuilderImpl(EntityManagerFactoryBuilderImpl.java:java)を使用しています。
    ... 22共通フレーム省略
原因:java.sql.SQLSyntaxErrorException.SQLSyntaxErrorException: 列 'content' の列長が大きすぎます (max = 16383); 代わりに BLOB または TEXT を使用してください。
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:118) ~[mysql-connector-java-8.0.11.jar:8.0.11] のようになります。
    at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:95) ~[mysql-connector-java-8.0.11.jar:8.0.11].
    at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122) ~[mysql-connector-java-8.0.11 .jar:8.0.11] のようになります。
    at com.mysql.cj.jdbc.StatementImpl.executeUpdateInternal(StatementImpl.java:1393) ~[mysql-connector-java-8.0.11.jar:8.0.11].
    at com.mysql.cj.jdbc.StatementImpl.executeLargeUpdate(StatementImpl.java:2353) ~[mysql-connector-java-8.0.11.jar:8.0.11] ※このファイルは、"StatementImpl.java.java "にあります。
    at com.mysql.cj.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1303) ~[mysql-connector-java-8.0.11.jar:8.0.11] となる。
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_181].
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_181].
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_181] ←クリックすると拡大します。
    at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_181].
    at org.apache.tomcat.jdbc.pool.StatementFacade$StatementProxy.invoke(StatementFacade.java:114) ~[tomcat-jdbc-8.5.16.jar:na].
    at com.sun.proxy.$Proxy71.executeUpdate(Unknown Source) ~[na:na].
    at org.hibernate.tool.schema.internal.TargetDatabaseImpl.accept(TargetDatabaseImpl.java:56) ~[hibernate-core-5.0.12.Final.jar:5.0.12 Final] のようになります。
    ... 32共通フレーム省略