解決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