引起:java.lang.ClassNotFoundException:org.springframework.boot.context.embedded.ServletRegistrationBean

时间:2018-04-20 11:18:25

标签: spring-boot

我正在从spring-boot从1.4.4RELEASE升级到1.5.12RELEASE。但在上下文加载期间,我遇到了错误。

Caused by: java.lang.ClassNotFoundException:
    org.springframework.boot.context.embedded.ServletRegistrationBean
        at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 69 more

我搜索过spring-boot.1.4.4中有两个ServletRegistrationBean

inflated:org / springframework / boot / context / embedded / ServletRegistrationBean.class  膨胀:org / springframework / boot / web / servlet / ServletRegistrationBean.class

但是在spring-boot.1.5.12中只有一个类。  膨胀:org / springframework / boot / web / servlet / ServletRegistrationBean.class

因此,主要上下文包ServletRegistrationBean丢失,app在上下文加载时出错。

有人可以帮忙解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

我追踪原因,为什么要加载ServletBeanRegistration类。 1.在我的情况下,HystrixDashboadConfiguration类试图创建一个ServletRegistrationBean的bean,它没有在spring-boot-1.5.12.RELEASE中找到相应的类。 2.当我从我的应用程序类顶部评论EnableHystrixDashboard注释时,它可以工作。