在使用eclipse進(jìn)行整合springmvc時(shí)經(jīng)常會(huì)碰到這樣的異常:?java.lang.ClassNotFoundException:org.springframework.web.context.ContextLoaderListener
這時(shí)里的意思是說(shuō)找不到j(luò)ar包仗嗦,如果使用的是maven管理jar包阱飘,會(huì)發(fā)現(xiàn)jar包明明已經(jīng)有了长搀,但還是報(bào)錯(cuò)他嚷;如果mvn package生成一個(gè)war包發(fā)布到tomcat下面會(huì)發(fā)現(xiàn)绽左,其實(shí)項(xiàng)目是沒(méi)問(wèn)題的屯断。
1.出現(xiàn)這個(gè)問(wèn)題的原因有可能的其中一點(diǎn)就是spring的jar包沒(méi)有被加
載昨稼,有的時(shí)候沒(méi)有拷spring的jar包會(huì)出現(xiàn)這個(gè)錯(cuò)誤步咪,但是當(dāng)你拷了以后這個(gè)錯(cuò)誤并沒(méi)有消失的時(shí)候就說(shuō)明jar包沒(méi)有被加載论皆,切記spring的
jar包一定要放在工程的lib下這樣才能避免這個(gè)錯(cuò)誤的發(fā)生。
2.使用了重復(fù)的類(lèi)庫(kù),且版本不一致点晴。導(dǎo)致低版本的被優(yōu)先使用感凤。比如今天遇到一種情況在tomcat服務(wù)器使用了axis2.war包,當(dāng)啟動(dòng)
tomcat的時(shí)候粒督,axis2.war包會(huì)自動(dòng)解壓陪竿,之后再該項(xiàng)目包里有相關(guān)的spring包,所以當(dāng)有另外一個(gè)工程要到spring時(shí)屠橄,就有可能要到
axis2的spring包萨惑,如果版本不一致就會(huì)導(dǎo)致該問(wèn)題,解決的方法就是讓該項(xiàng)目不受axis2項(xiàng)目包的影響仇矾。
3.如果不是上面兩種原因庸蔼,那么可以試一下下面的解決方案: