今天将项目打包成war包在tomcat部署的时候,启动一闪而过,查看了tomcat的log日志,发现启动的时候报了这个错误:
严重: Error starting static Resources
java.lang.IllegalArgumentException:
Document base E:\workspaces\skg\skg-app-root\modules\app-skg-store\src\main\webapp does not exist or is not a readable directory
at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:136)
at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:5110)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1575)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1565)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
问题原因
上网一查才知道,这个tomcat是我在eclipse部署过项目的,tomcat7x\conf\server.xml里面有一个context的配置指向了这个workspaces工作空间
问题解决
于是乎,我把这个context配置注释掉,再启动tomcat,完美运行!
另外,如果在conf\Catalina\localhost里面有两个xml文件host-manager.xml、manager.xml,
或Catalina里面其它的文件夹中也可能存在host-manager.xml,manager.xml这样的文件, 把它们都删除了就可以了.