有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java错误无法实例化接口组织。springframework。上下文ApplicationContextInitializer

这是我的用户课程

package com.sparsh.restapi;

import javax.persistence.*;
@Entity
public class User {

     @Id @GeneratedValue(strategy=GenerationType.AUTO) private long id;
     private final String name;
        private final String email;

        public User() {
            this.name = "";
            this.email = "";
        }

        public User(String name, String email) {
            this.name = name;
            this.email = email;
        }

        public long getId() {
            return id;
        }

        public String getName() {
            return name;
        }

        public String getEmail() {
            return email;
        }

        @Override
        public String toString() {
            return "User{" + "id=" + id + ", name=" + name + ", email=" + email + '}';
        }
}

这是我的用户控制器课程

package com.sparsh.restapi;

//import com.sparsh.restapi.UserRepository;
import java.util.List;

import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
@CrossOrigin(origins="http://localhost:4200")
public class UserController {

    private final UserRepository userRepository;
    public UserController(UserRepository userRepository) {
        this.userRepository = userRepository;
    }
    @GetMapping("/users")
    public List<User> getUsers(){
        return (List<User>) userRepository.findAll();
    }

    @PostMapping("/users")
    void addUser(@RequestBody User user) {
        userRepository.save(user);
    }

}

这是我的UserRepository课程

package com.sparsh.restapi;

import org.springframework.data.repository.CrudRepository;
import org.springframework.stereotype.Repository;
import org.springframework.web.bind.annotation.CrossOrigin;

@Repository
public interface UserRepository extends CrudRepository<User, Long> {

}

这是我的主课

package com.sparsh.restapi;

import java.util.stream.Stream;

import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;

@SpringBootApplication
public class Application {

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

    @Bean
    CommandLineRunner init(UserRepository userRepository) {
        return args -> {
            Stream.of("John", "Julie", "Jennifer", "Helen", "Rachel").forEach(name -> {
                User user = new User(name, name.toLowerCase() + "@domain.com");
                userRepository.save(user);
            });
            userRepository.findAll().forEach(System.out::println);
        };
    }
}

这是控制台中显示的错误。如何解决这个错误。我很困惑,无法摆脱这个错误

Exception in thread "main" java.lang.IllegalArgumentException: Cannot instantiate interface org.springframework.context.ApplicationContextInitializer : org.springframework.boot.autoconfigure.SharedMetadataReaderFactoryContextInitializer
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:383)
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:360)
    at org.springframework.boot.SpringApplication.initialize(SpringApplication.java:233)
    at org.springframework.boot.SpringApplication.<init>(SpringApplication.java:209)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:970)
    at org.springframework.boot.SpringApplication.run(SpringApplication.java:959)
    at com.sparsh.restapi.Application.main(Application.java:14)
Caused by: java.lang.NoSuchMethodException: org.springframework.boot.autoconfigure.SharedMetadataReaderFactoryContextInitializer.<init>()
    at java.lang.Class.getConstructor0(Class.java:3082)
    at java.lang.Class.getConstructor(Class.java:1825)
    at org.springframework.boot.SpringApplication.getSpringFactoriesInstances(SpringApplication.java:378)
    ... 6 more

https://imgur.com/a/MMpjllU Text

如何解决这个错误。我很困惑,我是spring boot的新手,我正在尝试使用rest api。对于前端,我使用的是角度


共 (0) 个答案