前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解决集成jpa时无法创建entityManagerFactory的问题

解决集成jpa时无法创建entityManagerFactory的问题

作者头像
端碗吹水
发布2020-09-23 10:06:19
2.9K0
发布2020-09-23 10:06:19
举报

最近将IDEA 2018.1版本更新到了2018.2版本,更新好后跑了一下之前的项目,结果就报错了,这个项目集成了spring data jpa。由于该错误有多种原因导致,在解决该错误的时候也花了一些时间,所以特别记录一下。关键的报错信息如下:

代码语言:javascript
复制
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/zero/xunwuproject/config/JpaConfig.class]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister

这个错误有多种原因导致,在网上查了一下, 大概有以下几种原因:

  1. 实体类的属性对象没有设置setter或者getter。 http://stackoverflow.com/questions/18042247/could-not-get-constructor-for-org-hibernate-persister-entity-singletableentitype
  2. 没有导入javassist的jar文件 (javassist-3.15.0-GA.jar什么的) http://blog.csdn.net/xiaochangwei789/article/details/7712725
  3. 实体类中的属性对象名和映射文件的property name不一致。 https://blog.csdn.net/liuzhengyang1/article/details/23127629

而我这里是第二个原因,缺少javassist的jar包,于是在pom文件中引入:

代码语言:javascript
复制
<dependency>
    <groupId>org.javassist</groupId>
    <artifactId>javassist</artifactId>
    <version>3.23.1-GA</version>
</dependency>

引入了这个jar包后,启动就正常了。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-10-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档