“线程中的异常”;“主要”;java.lang.IllegalArgumentException:无法实例化接口org.springframework.context.ApplicationListener

“线程中的异常”;“主要”;java.lang.IllegalArgumentException:无法实例化接口org.springframework.context.ApplicationListener,java,spring,maven,spring-mvc,spring-boot,Java,Spring,Maven,Spring Mvc,Spring Boot,这是我第一次问这个问题。一开始我想注意到我的英语很糟糕。我正在用Java编写程序,它必须读取文件并将内容发送到localhost:8083/list,但这是其中一个模块。 我的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-instanc

这是我第一次问这个问题。一开始我想注意到我的英语很糟糕。我正在用Java编写程序,它必须读取文件并将内容发送到localhost:8083/list,但这是其中一个模块。 我的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>

    <parent>
        <groupId>org.antek</groupId>
        <artifactId>spring-boot-multi-module</artifactId>
        <version>0.0.1-SNAPSHOT</version>
    </parent>

    <artifactId>List</artifactId>
    <packaging>jar</packaging>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-framework-bom</artifactId>
        </dependency>
    </dependencies>

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

</project>
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class, args);
    }
}
我的控制器

import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
@EnableAutoConfiguration
public class ListController {
    @RequestMapping("/list")
    @ResponseBody
    class Lista {
        MainList list = new MainList();
    }
}
最后是我的节目

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;


public class MainList {
    public static int zwracanie(String[] args) throws IOException {
            String filePath = "C:\\Users\\Antoni\\Desktop\\Lista.txt";
            int number = 0;
            BufferedReader fileReader = null;

            try {
                fileReader = new BufferedReader(new FileReader(filePath));
                String numberAsString = fileReader.readLine();
                number = Integer.parseInt(numberAsString);
            } finally {
                if (fileReader != null) {
                    fileReader.close();
                }
            }
            return number;
        }
    }
我在IntelliJ Idea工作,当我试图编译这个文件时,出现了问题

线程“main”java.lang.IllegalArgumentException中的异常:无法实例化接口org.springframework.context.ApplicationListener:org.springframework.boot.context.logging.ClasspathLoggingApplicationListener 位于org.springframework.boot.SpringApplication.createspringfactorieinstances(SpringApplication.java:448) 位于org.springframework.boot.SpringApplication.getspringfactorieinstances(SpringApplication.java:427) 位于org.springframework.boot.SpringApplication.getspringfactorieinstances(SpringApplication.java:418) 位于org.springframework.boot.SpringApplication(SpringApplication.java:268) 位于org.springframework.boot.SpringApplication(SpringApplication.java:247) 位于org.springframework.boot.SpringApplication.run(SpringApplication.java:1255) 位于org.springframework.boot.SpringApplication.run(SpringApplication.java:1243) 位于Application.main(Application.java:8) 原因:java.lang.NoClassDefFoundError:org/springframework/context/event/GenericaApplicationListener 位于java.base/java.lang.ClassLoader.defineClass1(本机方法) 位于java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1009) 位于java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174) 位于java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:801) 位于java.base/jdk.internal.loader.BuiltinClassLoader.findclassonclasspathrnull(BuiltinClassLoader.java:699) 位于java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:622) 位于java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:580) 位于java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190) 位于java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499) 位于org.springframework.util.ClassUtils.forName(ClassUtils.java:274) 位于org.springframework.boot.SpringApplication.createspringfactorieinstances(SpringApplication.java:440) ... 还有7个 原因:java.lang.ClassNotFoundException:org.springframework.context.event.GenericaApplicationListener 位于java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582) 位于java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:190) 位于java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:499) ... 还有18个

删除依赖项

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-framework-bom</artifactId>
</dependency>

org.springframework
spring框架bom表

您在版本4.0.3.RELEASE中添加了这一点,这会与Spring Boot管理的版本产生版本冲突。

欢迎使用SOF。你能把你的项目的依赖关系树添加到问题中吗<代码>mvn依赖项:tree请注意:堆栈跟踪的重要部分是表示由以下原因引起的
:java.lang.NoClassDefFoundError:org/springframework/context/event/GenericApplicationListener
。另外:了解编译时错误和运行时异常之间的区别。老实说,这是两件完全不同的事情:一个不知道区别的人应该花一些时间研究这些基础知识,而不是使用大型复杂的框架,比如spring。
<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-framework-bom</artifactId>
</dependency>