entityManagerFactory NoClassDefFoundError

时间:2018-01-10 19:19:16

标签: java hibernate spring-mvc jpa spring-boot

我正在使用Spring Boot进行简单的api并嵌入数据库并且它打击了我

  

的NoClassDefFoundError。 :创建名称bean的错误   '的entityManagerFactory'

也许您知道我应该将哪个依赖项包含在我的pom.xml中。 Maven项目。 这就是我所拥有的:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.apache.derby</groupId>
        <artifactId>derby</artifactId>
        <scope>runtime</scope>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>
  

org.springframework.beans.factory.UnsatisfiedDependencyException:   创建名称为&#39; entityManagerFactory&#39;的bean时出错在课堂上定义   路径资源   [组织/ springframework的/引导/自动配置/ ORM / JPA / HibernateJpaAutoConfiguration.class]:   通过方法“entityManagerFactory”表达不满意的依赖关系。   参数0;嵌套异常是   org.springframework.beans.factory.UnsatisfiedDependencyException:   创建名称为&#39; entityManagerFactoryBuilder&#39;的bean时出错定义于   类路径资源   [组织/ springframework的/引导/自动配置/ ORM / JPA / HibernateJpaAutoConfiguration.class]:   通过方法表达不满意的依赖性   &#39; entityManagerFactoryBuilder&#39;参数0;嵌套异常是   org.springframework.beans.factory.BeanCreationException:错误   创建名为&#39; jpaVendorAdapter&#39;的bean在类路径中定义   资源   [组织/ springframework的/引导/自动配置/ ORM / JPA / HibernateJpaAutoConfiguration.class]:   通过工厂方法进行Bean实例化失败;嵌套异常是   org.springframework.beans.BeanInstantiationException:失败   实例化[org.springframework.orm.jpa.JpaVendorAdapter]:工厂   方法&#39; jpaVendorAdapter&#39;抛出异常;嵌套异常是   java.lang.NoClassDefFoundError:

2 个答案:

答案 0 :(得分:0)

1)确保您的所有依赖项(spring-boot-starter-data-jpa除外)都不具有与hibernate-core的包含依赖关系。否则,图书馆可能会发生冲突。

2)您可能还需要添加此工件:

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-entitymanager</artifactId>
</dependency>

应该推断出版本。

答案 1 :(得分:0)

import turtle turtle.write("Turtle Racer", align="center", font=("Comic Sans MS", 80, "normal")) turtle.done() hibernate-core通过hibernate-entitymanager

传递

已修改:您可以先尝试删除本地spring-boot-starter-data-jpa吗?有时它会被破坏。

.m2/repository

您是否可以包含使用rm -rf ~/.m2/repository内容的Spring Boot版本。

您是否还可以包含数据源和JPA属性?