项目在本地跑没有问题,将项目打成war包放在服务器上就报这个错误,而且服务器上相应的路径下也有这个jar包,
错误信息:
25-Oct-2017 13:34:26.404 严重 [ContainerBackgroundProcessor[StandardEngine[Catalina]]] org.apache.catalina.core.ApplicationFilterConfig.release Failed to destroy the filter named [struts2Filter] of type [org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter]
java.lang.IllegalStateException: java.io.FileNotFoundException: C:\hostadmin\tomcat80\webapps\thorgeneweb\WEB-INF\lib\antlr-2.7.7.jar (系统找不到指定的路径。)
at org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.getArchiveEntry(AbstractSingleArchiveResourceSet.java:97)
at org.apache.catalina.webresources.AbstractArchiveResourceSet.getResource(AbstractArchiveResourceSet.java:260)
at org.apache.catalina.webresources.StandardRoot.getResourceInternal(StandardRoot.java:281)
at org.apache.catalina.webresources.Cache.getResource(Cache.java:62)
at org.apache.catalina.webresources.StandardRoot.getResource(StandardRoot.java:216)
at org.apache.catalina.webresources.StandardRoot.getClassLoaderResource(StandardRoot.java:225)
at org.apache.catalina.loader.WebappClassLoaderBase.findResourceInternal(WebappClassLoaderBase.java:2633)
at org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2470)
at org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:859)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1302)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
at org.apache.struts2.dispatcher.Dispatcher.cleanup(Dispatcher.java:285)
at org.apache.struts2.dispatcher.ng.PrepareOperations.cleanupDispatcher(PrepareOperations.java:184)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.destroy(StrutsPrepareAndExecuteFilter.java:108)
at org.apache.catalina.core.ApplicationFilterConfig.release(ApplicationFilterConfig.java:312)
at org.apache.catalina.core.StandardContext.filterStop(StandardContext.java:4733)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5528)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:221)
at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:849)
at org.apache.catalina.startup.HostConfig.undeploy(HostConfig.java:1395)
at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1321)
at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1581)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:284)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:95)
at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1168)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1377)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1381)
at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1349)
at java.lang.Thread.run(Thread.java:745)
tomcat里的配置文件对吗?
这个目录能不能被tomcat访问到
可能是jar包没有复制过去
java.lang.IllegalStateException: java.io.FileNotFoundException: C:\hostadmin\tomcat80\webapps\thorgeneweb\WEB-INF\lib\antlr-2.7.7.jar (系统找不到指定的路径。)
系统找不到你lib下面的这个包,看看有没有问题
antlr-2.7.7.jar 这个文件是在你的电脑上吧,tomcat服务器对应的位置没有这个jar包
项目少了jar包,提示的antlr-2.7.7.jar可能没有
应该是你在本地发布的时候,lib下面没有同步更新这个jar包到本地的tomcat下吧。你是把本地的webapps下的项目直接拷贝到服务器的吗?还是用svn的?如果是svn的话,那就是你这个jar包没有更新了。可能是你没有提交,也可能是你同事没有提交。
: C:\hostadmin\tomcat80\webapps\thorgeneweb\WEB-INF\lib\antlr-2.7.7.jar
找不到jar,,题主咋打包的?,,还有C:...这种路径
项目在本地跑是没有问题的,在eclipse中导出war包到服务器就出现了这个问题!
有一个地方配置路径错误,导致jar包找不到,可以全局搜索一下C:\hostadmin\tomcat80 看看哪里配置错了
查看你部署的项目的WEB-INF\lib目录下有没有JSTL相关的jar包,如果没有,请加入 或者查看tomcat目录下的lib下有没有JSTL相关的jar, 如果没有,请加入
项目缺少jar包,楼主在打包前刻印先buildpath一下,然后在打包成war包试一下。
既然java项目本地运行正常,那么发布到服务器 tomcat 应该不会报错。。。。。。。。。。你可以尝试一下把tomcat下的work\Catalina清一下,删除干净,重试一下,
看看你的webapp下项目里面的lib中能不能找到这个jar包,如果有的话,替换一下再试试看
C:\hostadmin\tomcat80\webapps\thorgeneweb\WEB-INF\lib\antlr-2.7.7.jar (系统找不到指定的路径。) 这个路径是本地的路径,服务器上应该是 /home......... 这种样子的吧
另外找到这个jar 包 右键 add to buildpath 试试
antlr-2.7.7.jar,没有资格jar包或者是没有更新
重新clean一下项目,然后重新打包
你发布到服务器,有没有删除服务器已经存在的项目文件,tomcat在新上传war包时,需要删除已经存在的被解压出来的项目文件夹
maven项目吧?antlr-2.7.7.jar在本地是通过lib方式引入的吧,看看服务器里面的lib包下有没有这个文件,没有就是编译的时候没有给你编译上,重新Update一下project
可能本地和服务器的jdk环境不一致 所导致 检查下服务器所用的jdk版本和本地所用的jdk版本 看是否同一个版本