嚴重: One or more listeners failed to start. Full details will be found in the appropriate container log filejava
嚴重: Skipped installing application listeners due to previous error(s)web
嚴重: Context [/pxy_sshDemo] startup failed due to previous errorstomcat
緣由:服務器
1.jar包的位置是否放在WEB-INF/lib下app
咱們的Java bean項目使用的本地本身的JRE,那麼classLoader在加載jar和class時候是分開的,對於咱們本身編寫的class,會在APP_HOME/bin下。導入的jar包或者user library的配置信息會出如今APP_HOME/.classpath文件中,ClassLoader會很智能去加載這些classes和jar。eclipse
而對於java web項目就不同了,雖然eclipse的workspace中仍有.classpath文件,但即便你導入的了本身定義的user library,它也不會出如今.classpath中,這就是問題的關鍵。ssh
對於java web項目,它最終不是經過本地的JRE去運行,而是部署到web 服務器,如Tomcat、Weblogic、WebSphere等,這些服務器都實現了自身的類加載器。ui
eclipse引用library 是爲了編譯代碼生成WEB-INF/classes裏面的class文件使用,使用eclipse j2ee IDE時,會將WEB-INF/lib中全部的lib自動加入到library中。spa
eclipse工程下的library是用來編譯裏面的src中java文件的,實際發佈到tomcat時,僅僅只複製了WEB-INF/lib裏面的jar包,因此出現eclipse能夠正常編譯但tomcat運行是找不到類.net
2.或者引入的jar包有重複的
首先排除jar包,看是否有重複,有刪低版本,留高版本
再從新編譯
3.tomcate,項目,IDE的jdk版本不一致
右鍵工程->properties->Java build path->Libraries tab頁->最後選擇JRE這是設置工程的運行環境。
window->preferences->Java->Compiler 勾掉 Use default compliance settings都選上 JDK,這個是eclipseIDE用來編譯java文 件的JDK
雙擊server-> runtime Environment->editor->JRE:選擇jdk版本,這個是選tomca運行和編譯web應用的
再從新編譯