10-Aug-2018 16:42:21.421 严重 [localhost-startStop-3] org.apache.catalina.startup.HostConfig.deployWAR Error deploying web application archive [D:\Apache\apache\webapps\QClub.war]
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/QClub]]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:758)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:985)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1857)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
springboot自带tomcat可以不用外部tomcat直接运行
https://blog.csdn.net/Glory_mm/article/details/75671458
这篇文章看一下。应该是tomcat中jar文件冲突问题。
这种情况一般是,没有屏蔽掉springboot的内嵌tomcat或者没有屏蔽掉比如jsp或servlet这样jar文件的原因,你可以搜索一下外部tomcat部署springboot项目,里面有详细的步骤可以参考一下。
是用的maven 还是gradle构建工具?
maven 记得添加 plugin spring-boot-maven-plugin
同时packaging要设为war
<build>
<plugins>
<!-- 用于生成 Spring boot的可执行jar/war包的插件 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
外部容器运行spring-boot项目,只需要在原项目上做两件事
1、在pom.xml中排除org.springframework.boot的内置tomcat容器
<!-- spring-boot web -->
org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-tomcat
2、spring-boot入口实现SpringBootServletInitializer接口
public class Application extends SpringBootServletInitializer{}
补充:SpringBootServletInitializer接口依赖javax.servlet包,需要在pom.xml中引入该包
以上说法全部试验过,都不能解决问题