2017-06-29 153 views
0

我正在處理一個java項目並嘗試運行一個jar文件。我發現了錯誤:Java ClassPath與java.lang.NoClassDefFoundError

Exception in thread "main" java.lang.NoClassDefFoundError 

大多數我讀過的其他線程的,說,這是因爲我需要使用-classpath選項。但是,我嘗試了幾種方法來實現這一點,但我仍然遇到同樣的錯誤。

我試圖實現-classpath選項並執行jar文件的最後一種方法如下所示。

java -classpath "/full/file/path/file.jar" -jar file.jar 

請讓我知道我在做什麼錯了!

回答

0

-jar是用於自包含的罐子。當指定-jar時,https://stackoverflow.com/a/18413058/20394解釋-classpath被忽略。如果它是一個獨立的罐子,請做-jar /full/file/path/file.jar。如果不是,則需要使用-classpath,並確保其所有運行時依賴項都可以通過該類路徑獲得。

如果您還沒有,可能需要學習使用像mvnbazel這樣的構建系統來管理您的類路徑,或嘗試通過像Eclipse這樣的IDE來運行您的類。