2

我已将 spring-boot-starter-parent 从 1.4.3 更改为 1.5.4

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

这是我的 java 应用程序文件

 @SpringBootApplication
    @ComponentScan("com.test")
    @EnableCaching
    @EnableAsync
    @EnableAspectJAutoProxy
    @EnableAutoConfiguration(exclude = { DataSourceAutoConfiguration.class, WebMvcAutoConfiguration.class })
public class Application {

当我启动我的服务器时,它会抛出错误。根据依赖关系,它应该处理依赖的 jar,比如 spring-boot

任何帮助表示赞赏。

org.springframework.context.ApplicationContextException: Unable to start embedded container; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'tomcatEmbeddedServletContainerFactory' defined in class path resource [org/springframework/boot/autoconfigure/web/EmbeddedServletContainerAutoConfiguration$EmbeddedTomcat.class]: Initialization of bean failed; nested exception is java.lang.NoClassDefFoundError: org/springframework/boot/context/embedded/ErrorPage
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    at org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizerBeanPostProcessor.postProcessBeforeInitialization(EmbeddedServletContainerCustomizerBeanPostProcessor.java:73)
    at org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizerBeanPostProcessor.postProcessBeforeInitialization(EmbeddedServletContainerCustomizerBeanPostProcessor.java:59)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:409)
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1581)
4

2 回答 2

2

customize方法中的一些代码com.xyz.asr.autoconfigure.asr.tomcat.AsrEmbeddedTomcatCustomizer是指类org.springframework.boot.context.embedded.ErrorPage。Spring Boot 1.5 中不存在该类。正确的完全限定名称ErrorPageorg.springframework.boot.web.servlet.ErrorPage

AsrEmbeddedTomcatCustomizer需要更新才能使用org.springframework.boot.web.servlet.ErrorPage

于 2018-03-08T21:50:32.763 回答
0

问题在于 Spring 版本。

由于 Spring Boot 版本 1.5.4 和 1.5.2 在其中一个子项目中混在一起。为它创建了问题 9543。

从 POM 文件中删除 spring-web 依赖项,并将 spring-boot-starter-web 放入 POM 中。

于 2018-03-08T20:48:18.503 回答