tomcat 启动错误 Cannot set web app root system property when WAR file is not expanded

版权声明:可以转载,说明来源。 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文件中运行应用程序。

猜你喜欢

转载自blog.csdn.net/weixin_42776979/article/details/81745560