今天啟動項目的時候,發現tomcat一直報錯,之前都一直沒有問題的啊,提示
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].Standard
dardHost[localhost].StandardContext[]]
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
... 6 more
Caused by: java.lang.NoClassDefFoundError: Lorg/apache/log4j/Logger;
看了pom.xml 配置,沒問題啊,而且到了maven資源庫下面看,有對應的jar包。
<dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.12</version> </dependency>
於是也到了webapps/項目/WEB_INF/lib下面,也有這些jar包啊,那就奇怪了。
后來,包webapps目錄先的項目先手動刪掉,再啟動eclipse的tomcat,發現沒有這些jar包。神奇了!
於是覺得是maven的問題,果然 項目-》右鍵-》 properties-》deployment Assembly
里面居然少了maven的引用!天啊,以前一直沒問題的啊。
於是加上后,啟動成功了!
but ?
但是為什么一開始 webapps/項目/WEB_INF/lib 下面是有這些jar包的呢?
這是因為tomcat啟動失敗,編譯失敗的時候,eclipse是不會重新部署項目上去的,所以上面的是我以前部署成功的舊項目!
所以就意外出現了這樣的問題!