2013-02-25 47 views
0

創建業務對象的網絡服務,在運行後,我得到一個異常錯誤:web服務運行時異常錯誤:java.lang.NoClassDefFoundError

Exception: java.lang.NoClassDefFoundError: com/crystaldecisions/sdk/exception/SDKException; 
nested exception is: java.lang.NoClassDefFoundError: com/crystaldecisions/sdk/exception/SDKException 
Message: java.lang.NoClassDefFoundError: com/crystaldecisions/sdk/exception/SDKException; nested 
exception is: java.lang.NoClassDefFoundError: com/crystaldecisions/sdk/exception/SDKException 

我既包括在WEB-INF/lib所有JAR文件,並作爲以及我在項目構建路徑中引用了外部JAR文件。

任何人都可以幫我解決這個問題嗎?謝謝。

回答

0

此錯誤表示這些文件未找到,但是從您的代碼引用,或者甚至是您引用的代碼間接使用的文件。您需要確保這些確切的類出現在您的JAR下的WEB-INF/lib下。我的猜測是你已經包含了JAR文件,但是已經放棄了其中的一些,或者在WEB-INF/lib中有JAR文件的錯誤版本。例如,您可以針對較新的版本進行編譯,但可以部署一些較舊的版本。

我用來驗證的技巧是find . -iname "*jar" -exec unzip -t {} | vim -。這一行將顯示文件列表,我可以搜索它所抱怨的那些類是否實際存在。如果你想使用其他編輯器,只需將其傳送給某個文件「find」。 -iname「* jar」-exec unzip -t {}> somefile.txt「。

+0

非常感謝。現在,由於某些支持jar文件版本丟失 – 2013-02-25 13:27:47