org.springframework.beans.factory.BeanCreationException:创建名称为'userResource的bean时出错

时间:2018-08-15 15:52:45

标签: java spring spring-boot

我在eclipse控制台上遇到这个问题已有几天了

  

org.springframework.beans.factory.BeanCreationException:创建名称为'userResource'的bean时出错
  跟
  原因:java.lang.IllegalStateException:无法自省类   和
  造成原因:java.lang.NoClassDefFoundError:org / springframework / data / jpa / repository / JpaRepository   然后
  引起原因:java.lang.ClassNotFoundException:
  org.springframework.data.jpa.repository.JpaRepository

这是我的

user.java
package com.example.SpringMVC4.webservices.SpringMVC04webservices;
import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity
public class User {

@Id
@GeneratedValue
private Integer id;

private String name;

private Date birthDate;

public User(Integer id, String name, Date birthDate) {
    super();
    this.id = id;
    this.name = name;
    this.birthDate = birthDate;
}

public User(String string, String string2) {
    // TODO Auto-generated constructor stub
}

public Integer getId() {
    return id;
}

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

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public Date getBirthDate() {
    return birthDate;
}

public void setBirthDate(Date birthDate) {
    this.birthDate = birthDate;
}

@Override
public String toString() {
    return "User [id=" + id + ", name=" + name + ", birthDate=" + birthDate + "]";
}


   }

以下:     UserRepository.java

package com.example.SpringMVC4.webservices.SpringMVC04webservices;

import org.springframework.data.jpa.repository.JpaRepository;

import org.springframework.stereotype.Repository;

@Repository
public interface UserRepository extends JpaRepository<User, Integer>{

User findOne(int id);

}

下面是     UserResource.java

package com.example.SpringMVC4.webservices.SpringMVC04webservices;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class UserResource {



@Autowired
private UserRepository userRepository;




//  retrieve All Users GET
@GetMapping("/users")
public List<User> retrieveAllUsers(){
    return userRepository.findAll();
}

//retrieve specific user
@GetMapping("/users/{id}")
public User retrieveUser(@PathVariable int id){
    return userRepository.findOne(id);
}

}

下面是我的pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>com.example.SpringMVC.04.webservices</groupId>
<artifactId>SpringMVC-04-webservices</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>

<name>SpringMVC-04-webservices</name>
<description>Demo project for Spring Boot</description>

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.3.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF- 
 8</project.reporting.outputEncoding>
    <java.version>1.8</java.version>
</properties>

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



    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-jpa</artifactId>
        <scope>test</scope>
    </dependency>

    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>spring-aop</artifactId>
    </dependency>

    <dependency>
        <groupId>com.h2database</groupId>
        <artifactId>h2</artifactId>
        <scope>runtime</scope>
    </dependency>
</dependencies>

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


</project>

0 个答案:

没有答案