版权声明:可以转载,说明来源。 https://blog.csdn.net/weixin_42776979/article/details/81745560
tomcat启动的时候遇到的错误如下:
16-Aug-2018 15:20:48.762 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class org.springframework.web.util.Log4jConfigListener
java.lang.IllegalStateException: Cannot set web app root system property when WAR file is not expanded
at org.springframework.web.util.WebUtils.setWebAppRootSystemProperty(WebUtils.java:154)
at org.springframework.web.util.Log4jWebConfigurer.initLogging(Log4jWebConfigurer.java:119)
at org.springframework.web.util.Log4jConfigListener.contextInitialized(Log4jConfigListener.java:49)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4813)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5272)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1407)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1397)
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)
这个项目是离职走的同事留给我的,我把原来的war包放上去也同样有这样的错误。
我不知道之前咋启动成功。根据错误提示 可以知道war包没有展开。
是不是因为权限不够呢 修改权限吧
[hadoop@data4 webapps]$ ll
总用量 64356
-rw-r--r-- 1 hadoop hadoop 65899751 8月 16 15:11 quartz-pushMessage.war
[hadoop@data4 webapps]$ chmod 777 quartz-pushMessage.war
[hadoop@data4 webapps]$ ll
总用量 64356
-rwxrwxrwx 1 hadoop hadoop 65899751 8月 16 15:11 quartz-pushMessage.war
启动还是没有展开呢,目前还不清楚,知道的请留意。多谢。
我目前的处理方案是 :
手动解压 war包 正常启动了。
问题所在:
找到问题了 tomcat配置问题
Host name="localhost" appBase="webapps" unpackWARs="false" deployXML="false" deployOnStartup="false" autoDeploy="false">
<Context path="" docBase="quartz-pushMessage" reloadable="false"/>
</Host>
unpackWars 需要等于true
扫描二维码关注公众号,回复:
3419624 查看本文章
如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序。