【问题标题】:Websphere 8.5.5 - spring boot error: SpringServletContainerInitializer not a subtypeWebsphere 8.5.5 - 春季启动错误:SpringServletContainerInitializer 不是子类型
【发布时间】:2019-08-23 06:17:03
【问题描述】:

我有一个在 Tomcat 8 上运行良好的 Spring Boot 应用程序。当我尝试在 Websphere 8.5.5 上部署它时,将“类加载器顺序”设置为“首先使用本地类加载器加载的类(最后是父类)”,应用程序启动失败,出现以下异常:

... 73 more
Caused by: java.util.ServiceConfigurationError: javax.servlet.ServletContainerInitializer: Provider org.springframework.web.SpringServletContainerInitializer not a subtype
    at java.util.ServiceLoader.fail(ServiceLoader.java:242)
    at java.util.ServiceLoader.access$300(ServiceLoader.java:192)
    at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:380)
    at java.util.ServiceLoader$1.next(ServiceLoader.java:456)
    at com.ibm.ws.webcontainer.webapp.WebAppImpl.initializeServletContainerInitializers(WebAppImpl.java:537)
    at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:410)
    at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:88)
    at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:171)
    ... 74 more

【问题讨论】:

    标签: spring-boot websphere


    【解决方案1】:

    只是添加了我对这个问题的经验,环顾了类似问题的各种答案,我发现问题可能是由类路径中的一些 javax-servlet 相关 jar 引起的。经过反复试验,我注意到 spring-boot-starter-web 依赖项具有继承的 spring-boot-starter-tomcat 依赖项。在 Websphere 8.5.5 上部署时从应用程序类路径中排除此 jar 解决了该问题。

    【讨论】:

      猜你喜欢
      • 2017-10-10
      • 2017-11-05
      • 1970-01-01
      • 2014-08-12
      • 2020-05-12
      • 1970-01-01
      • 1970-01-01
      • 2018-01-20
      相关资源
      最近更新 更多