解决javaweb项目在jetty中能正确运行但是在tomcat中运行错误的问题


在javaweb开发时候为了快速构建和测试项目经常用到maven+jetty插件运行项目,但是有时候会遇见一个很奇怪的问题。在jetty中运行良好的项目,放在tomcat中就不能跑。这里是放在eclipse的tomcat中,不是打包放在tomcat中跑。其实错误的打包方法也会导致出现这个问题。它一般报的错误是:

严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener
java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:506)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:488)
    at ...

经过多番搜索查询得到的解决方案如下:
其实是你的jar文件没有同步发布到自己项目的lib目录中(如果你是用Maven进行构建的话) 可以试试 下面的办法 项目点击右键 点击 Properties 选择Deployment Assembly 再点击右边的Add按钮 选择Java Build Path Entries后点击Next按钮 然后选择你的Maven Dependencies 确定即可。如下图所示:

项目就能正确的在tomcat中运行起来了。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM