我的問題是我有一個Web應用程序構建並部署爲JBoss 6的WAR文件。我的servlet無法在我的應用程序中加載類並拋出NoClassDefFoundError錯誤。NoClassDefFoundError當類在JBoss 6中WAR-WEB-INF/classes文件夾
我確認這個類存在於WAR文件的正確位置。我的所有應用程序類都存在於WEB-INF/classes文件夾中,以及我的servlet類,它可以順利執行。事實上,看起來這只是一個不在classpath中的類,因爲應用程序的其他方面運行良好。
JBoss在JDK 1.6_21上運行,應用程序是使用JDK 1.6_24構建的,這不應該是個問題嗎?
此外,這個應用程序在Eclipse中本地運行良好,當我將WAR文件部署到單獨的Tomcat 7和Glassfish 3服務器時,他們都發現這個類沒有問題。
我不希望任何人立即知道什麼是錯誤的,如果有人看到類似的事情發生之前,那麼請分享你的經驗,或者如果你有很好的提示或知道好的工具,以真正深入到classpath問題,然後請分享。
它抱怨什麼類?更可能的是,JBoss已經在它的系統/共享罐中提供了這個類,並且它與戰爭中的類相沖突。我沒有解決方案,只有我對解決JBoss類加載和隔離問題的同情不是很有趣或很容易。 – 2011-03-31 18:50:46
這是我的班。 JBoss不會打包它,除非他們偷偷溜進我的辦公室偷走它,而我正在抓咖啡:) – 2011-03-31 18:56:54