我正在使用Eclipse來編譯&運行Java應用程序。我創建了幾個項目,我將它們作爲jar文件導出並導入(將其添加到構建路徑中)作爲其他項目中的jar文件導出。我添加的jar如下:爲什麼我在使用使用poi jar的jar時得到java.lang.NoClassDefFoundError
- 副本罐子的項目,我想
- 右擊罐子 - >構建路徑 - >添加到構建路徑
這是我第一次我得到這個錯誤:
java.lang.NoClassDefFoundError
我創建了一個使用POI罐子的項目。項目名稱是「A」。我將這個項目導出到A.jar文件並在B項目中導入它(添加到構建路徑)。 當我運行的B類項目,並嘗試初始化(調用構造函數)從a.jar文件的對象,我發現了以下錯誤:
java.lang.NoClassDefFoundError: org/apache/poi/ss/usermodel/CellStyle
我選了以下主題:
但沒找到答案。
爲什麼我得到這個錯誤?這不是我第一次,我正在導入/添加到構建路徑。但是現在我得到一個錯誤。
我該如何解決?
謝謝。所以如果我有項目A.jar和項目B.jar使用A.jar。那麼使用B.jar的項目C jar必須包含A.jar和B.jar?爲什麼只包含B.jar是不夠的(似乎是正確的邏輯方式......不是?) – user3668129 2015-02-07 16:34:36
@ user3668129因爲A.jar不包含B.jar。如果你使用像Maven這樣的深度管理,它將會管理這種依賴。 – Jens 2015-02-07 16:38:24