[英]Spring Data JPA: Example from Spring in Action don't run
我尝试从动作中的Spring开始一个例子.STS向我显示错误:
启动ApplicationContext时出错。 要显示条件报告,请在启用“debug”的情况下重新运行应用程序。 2019-06-24 10:47:06.472 ERROR 6300 --- [restartedMain] osboot.SpringApplication
:应用程序运行失败org.springframework.beans.factory.BeanCreationException:在类路径资源[org / springframework / boot / autoconfigure / orm / jpa / HibernateJpaConfiguration.class]中定义名称为'entityManagerFactory'的bean创建错误:init方法的调用失败; 嵌套异常是javax.persistence.PersistenceException:[PersistenceUnit:default]无法构建Hibernate SessionFactory; 嵌套异常是org.hibernate.MappingException:无法获取org.hibernate.persister.entity.SingleTableEntityPersister的构造函数
这个例子可能会在那里收到: GitHub - Spring in action:Spring Data JPA
你能帮助我吗? 如果需要来自示例的代码,我可以在这里复制。
此示例不使用Java> 8运行。
您必须使用Java 8按原样运行它。
Spring Boot 2.0.x不支持Java 11。
您应该将示例升级到2.1.6
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.6.RELEASE</version>
<relativePath /> <!-- lookup parent from repository -->
</parent>
我尝试重新产生你的错误,我也抓住了同样的错误
引起:org.hibernate.MappingException:无法获取org.hibernate.persister.entity.SingleTableEntityPersister的构造函数
我读了评论Spring Data JPA:Spring in Action的例子没有运行
更改
@NoArgsConstructor(access=AccessLevel.PRIVATE, force=true)
至
@NoArgsConstructor(access=AccessLevel.PUBLIC, force=true)
不解决问题。 保持原样。
解:
(1)我正在使用JDK 12.添加依赖项
<!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.25.0-GA</version>
</dependency>
(2)程序argumnet
--illegal-access=ignore
结果:在控制台日志中,应用程序运行成功
Hibernate:插入成分(名称,类型,id)值(?,?,?)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.