简体   繁体   English

错误org.springframework.beans.factory.BeanCreationException:创建bean Spring Boot时出错

[英]Error org.springframework.beans.factory.BeanCreationException: Error creating bean Spring Boot

I am doing springboot + hibernate application. 我正在做springboot +休眠应用程序。 When I run the application on tomcat server I am getting some exceptions. 当我在tomcat服务器上运行该应用程序时,出现了一些异常。 Errors: http://pastebin.com/tdwWTvFZ 错误: http//pastebin.com/tdwWTvFZ

pom.xml 的pom.xml

    <groupId>pzn</groupId>
    <artifactId>com.mryndak.pzn</artifactId>
    <version>1.0-SNAPSHOT</version>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.2.3.RELEASE</version>
    </parent>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>2.5.1</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>4.3.9.Final</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-rest</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-jpa</artifactId>
        </dependency>
        <dependency>
            <groupId>postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <version>9.1-901.jdbc4</version>
        </dependency>
        <dependency>
            <groupId>javax.persistence</groupId>
            <artifactId>persistence-api</artifactId>
            <version>1.0.2</version>
        </dependency>
    </dependencies>

    <properties>
        <java.version>1.8</java.version>

        <!-- use UTF-8 for everything -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

    </properties>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

    <repositories>
        <repository>
            <id>spring-releases</id>
            <name>Spring Releases</name>
            <url>https://repo.spring.io/libs-release</url>
        </repository>
        <repository>
            <id>org.jboss.repository.releases</id>
            <name>JBoss Maven Release Repository</name>
            <url>https://repository.jboss.org/nexus/content/repositories/releases</url>
        </repository>
    </repositories>

    <pluginRepositories>
        <pluginRepository>
            <id>spring-releases</id>
            <name>Spring Releases</name>
            <url>https://repo.spring.io/libs-release</url>
        </pluginRepository>
    </pluginRepositories>


</project>

application.yml application.yml

spring:
  datasource:
    driverClassName: org.postgresql.Driver
    url: jdbc:postgresql://localhost:5432/pzn
    username: mateusz
    password: root
  jpa:
    database_platform: org.hibernate.dialect.PostgreSQLDialect

Members.java Members.java

package com.mryndak.pzn.entity;

import org.springframework.boot.orm.jpa.EntityScan;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
/**
 * Created by mateusz on 12.05.15.
 */
@Entity
public class Members {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private long id;
    private String firstName;
    private String secondName;
    private String lastName;


    public long getId() {
        return id;
    }

    public void setId(long id) {
        this.id = id;
    }

    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getSecondName() {
        return secondName;
    }

    public void setSecondName(String secondName) {
        this.secondName = secondName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    @Override
    public String toString() {
        return String.format(
                "Member[id=%d, firstName='%s', secondName='%s', lastName='%s'",
                id, firstName, secondName, lastName
        );
    }
}

MembersRepository.java MembersRepository.java

    package com.mryndak.pzn.repository;

import com.mryndak.pzn.entity.Members;
import org.springframework.data.repository.CrudRepository;
import org.springframework.data.repository.query.Param;
import org.springframework.data.rest.core.annotation.RepositoryRestResource;

import java.util.List;


/**
 * Created by mateusz on 12.05.15.
 */
@RepositoryRestResource
public interface MembersRepository extends CrudRepository<Members, Integer> {

    List<Members> findByFirstName(@Param("firstName") String firstName);

}

MembersController.java MembersController.java

package com.mryndak.pzn.controller;

import com.mryndak.pzn.entity.Members;
import com.mryndak.pzn.repository.MembersRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by mateusz on 12.05.15.
 */

@RestController
public class MambersController {

    @Autowired
    MembersRepository membersRepository;

    @RequestMapping(value = "/api/members/", method = RequestMethod.GET )
    public List<Members> getAll() {
        return (List<Members>) membersRepository.findAll();
    }
}

Application.java Application.java

package com.mryndak.pzn;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.jpa.repository.config.EnableJpaRepositories;

/**
 * Created by mateusz on 12.05.15.
 */
@Configuration
@ComponentScan
@EnableAutoConfiguration
@EnableJpaRepositories(basePackages = "com.mryndak.pzn.repository")
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }

}

Remove the following dependency, it is causing a version conflict: 删除以下依赖项,这会导致版本冲突:

<dependency>
    <groupId>javax.persistence</groupId>
    <artifactId>persistence-api</artifactId>
    <version>1.0.2</version>
</dependency>

Hibernate 4.3 implements JPA 2.1 and brings its own version of the API jar. Hibernate 4.3实现了JPA 2.1,并带来了自己的API jar版本。 JPA 1.0 is way too old. JPA 1.0太旧了。

Also remove the direct dependency of hibernate-core, since spring-data-jpa has its own dependency on it. 还请删除hibernate-core的直接依赖项,因为spring-data-jpa对其具有自己的依赖项。 If you want to change the hibernate version, add the following to the POM: 如果要更改休眠版本,请将以下内容添加到POM:

<properties>
    <hibernate.version>4.3.9.Final</hibernate.version>
</properties>

This will make sure, that all required dependencies for Hibernate have the same version (in your case, hibernate-core was on 4.3.9.Final, and hibernate-entitymanager was still on 4.3.8.Final, which caused the conflict). 这样可以确保Hibernate所需的所有依赖项都具有相同的版本(在您的情况下,hibernate-core位于4.3.9.Final上,而hibernate-entitymanager仍位于4.3.8.Final上,这会引起冲突)。 See also the Spring Boot documentation about that topic: http://docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/htmlsingle/#howto-customize-dependency-versions-with-maven 另请参阅有关该主题的Spring Boot文档: http : //docs.spring.io/spring-boot/docs/1.2.3.RELEASE/reference/htmlsingle/#howto-customize-dependency-versions-with-maven

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 org.springframework.beans.factory.BeanCreationException:在 Spring 中创建 bean 时出错 - org.springframework.beans.factory.BeanCreationException: Error creating bean in Spring Spring Boot 项目“org.springframework.beans.factory.BeanCreationException:创建名为‘entityManagerFactory’的 bean 时出错”错误 - Spring Boot Project "org.springframework.beans.factory.BeanCreationException:Error creating bean with name 'entityManagerFactory'" ERROR org.springframework.beans.factory.BeanCreationException:org.springframework.beans.factory.BeanCreationException:创建bean时出错 - org.springframework.beans.factory.BeanCreationException:org.springframework.beans.factory.BeanCreationException: Error creating bean Spring Boot`org.springframework.beans.factory.BeanCreationException:创建bean的错误注入自动绑定的依赖项失败; - Spring Boot `org.springframework.beans.factory.BeanCreationException: Error creating bean Injection of autowired dependencies failed; Spring 启动 BookStore 项目“org.springframework.beans.factory.BeanCreationException:创建名为“bookStoreRepo”的 bean 时出错” - Spring Boot BookStore Project "org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'bookStoreRepo'" org.springframework.beans.factory.BeanCreationException:创建bean时出错 - org.springframework.beans.factory.BeanCreationException: Error creating bean org.springframework.beans.factory.BeanCreationException:创建名称为bean的错误 - org.springframework.beans.factory.BeanCreationException: Error creating bean with name 春季错误:org.springframework.beans.factory.BeanCreationException:创建URL中定义的名称为&#39;entityManagerFactory&#39;的bean时出错 - Spring error: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in URL Java Spring错误:创建名称为bean的错误:嵌套异常为org.springframework.beans.factory.BeanCreationException - Java Spring Error: Error creating bean with name : nested exception is org.springframework.beans.factory.BeanCreationException Spring MVC + Hibernate Context初始化失败org.springframework.beans.factory.BeanCreationException:创建bean时出错 - Spring mvc + hibernate Context initialization failed org.springframework.beans.factory.BeanCreationException: Error creating bean
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM