Site Overlay

Spring boot 解决 ‘entityManagerFactory’ could not be found.

Field userRepository in xx required a bean named 'entityManagerFactory' could not be found. Consider defining a bean named 'entityManagerFactory' in your configuration.

方法一 删除版本号(无效)

按照所述删除版本号:

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
</dependency>

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-entitymanager -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
</dependency>

不起效。

方法二 手动删除jar文件(无效 )

删除 hibernate-core 所在的本地 repository 文件夹,然后重新下载依赖,错误依旧。

方法三 删除 .m2 下所有文件(无效)

妈的,还浪费老子半个小时重新下载。

方法四 在主类添加 @EntityScan 注解

无效。

方法五 去除 spring-data-jpa 的版本

无效。

方法六 引入依赖 hibernate-jpa-2.1-api

<!-- https://mvnrepository.com/artifact/org.hibernate.javax.persistence/hibernate-jpa-2.1-api -->
<dependency>
    <groupId>org.hibernate.javax.persistence</groupId>
    <artifactId>hibernate-jpa-2.1-api</artifactId>
    <version>1.0.2.Final</version>
</dependency>

无效。

方法六 改用 spring-boot-starter-data-jpa 依赖(有效)

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-core -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-core</artifactId>
</dependency>

<!-- https://mvnrepository.com/artifact/org.hibernate/hibernate-entitymanager -->
<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

发表评论

电子邮件地址不会被公开。 必填项已用*标注