tomcat部署後在web-inf下沒有lib文件夾解決方案


咱們在作web開發是,常常都要在eclipse中搭建web服務器,並將開發中的web項目部署到web服務器進行調試,在此,我選擇的是tomcat服務器。以前部署web項目到tomcat進行啓動調試都很正常,今天忽然出現沒法啓動狀況,啓動過程報以下錯誤:java

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)
    at org.apache.catalina.core.DefaultInstanceManager.loadClass(DefaultInstanceManager.java:532)
    at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged(DefaultInstanceManager.java:514)
    at org.apache.catalina.core.DefaultInstanceManager.newInstance(DefaultInstanceManager.java:133)
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4727)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5285)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
    at java.util.concurrent.FutureTask.run(FutureTask.java:166)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
    at java.lang.Thread.run(Thread.java:722)web

類找不到,該類依賴於spring-web-XXXX.jar,看了下maven依賴庫,該依賴是存在的,那是怎麼回事,而後再看tomcat目錄下的webapps中部署的項目,項目已經部署成功,相應的class文件和靜態文件都有了,但仔細一看,在WEB-INF下缺乏了lib文件夾,才明白爲何找不到org.springframework.web.context.ContextLoaderListener類了。爲何在eclipse中啓動tomcat時沒有將lib拷貝過來,想一想以前碰到了項目部署設置的問題。解決辦法以下:spring

右擊項目->properties->找到Deployment Assembly,右邊即是編譯打包的配置,看是否是缺乏了lib庫的依賴,個人就是,點擊Add,添加maven依賴庫。最後列表以下apache


再從新啓動tomcat,啓動成功!!tomcat

相關文章
相關標籤/搜索