天天看点

13.5 SpringBoot应用启动错误org.apache.catalina.LifecycleException错误日志原因分析解决方案

13.5 SpringBoot应用启动错误org.apache.catalina.LifecycleException

===

错误日志

org.apache.catalina.LifecycleException: A child container failed during start
           

原因分析

项目依赖里面单独指定了servlet-api,类路径里面有多个版本servlet-api,导致类冲突

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>servlet-api</artifactId>
    <version>${servlet-api-version}</version>
    <scope>provided</scope>
</dependency>
           

解决方案

在Springboot中,不要单独指定下面几个依赖的版本,默认使用Springboot的配置完的依赖即可:

providedCompile('org.springframework.boot:spring-boot-starter-tomcat')
    compile('javax.servlet:jstl')
    providedCompile('org.apache.tomcat.embed:tomcat-embed-jasper')