簡體   English   中英

“主要” java.lang.NoClassDefFoundError:org / apache / http / HttpEntity

[英]“main” java.lang.NoClassDefFoundError: org/apache/http/HttpEntity

我正在嘗試在我的項目中使用apache http庫。 我將庫文件導入了我的項目http://imgur.com/WvwqcDS

運行程序時,出現以下錯誤:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/HttpEntity
        at java.lang.Class.getDeclaredMethods0(Native Method)
        at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
        at java.lang.Class.getMethod0(Unknown Source)
        at java.lang.Class.getMethod(Unknown Source)
        at sun.launcher.LauncherHelper.getMainMethod(Unknown Source)
        at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.apache.http.HttpEntity
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 6 more

ClassLoader找不到org.apache.http.HttpEntity,該文件應位於“ httpcore-4.3.jar”內。 打開罐子作為存檔,並驗證它是否包含org / apache / http / HttpEntity.class。 如果是這樣,則問題出在啟動配置中。 在Eclipse中,轉到“運行”>“運行配置...”,然后找到您的主類的Java應用程序配置文件(根據截圖,該類應為“ Launcher”項目中包含主方法的類)。 在“類路徑”選項卡下,您應該看到列出了您的庫jar。

如果不是,請返回到“導航”窗格中的“啟動器”項目,右鍵單擊並選擇“屬性”,轉到“構建路徑”,刪除jar,按OK,然后返回並再次添加它們(以確保日食元數據是新鮮的)。 另外,在“訂單和導出”選項卡下,最好檢查所有jar,以便如果將Launcher作為另一個項目的依賴項包含在內,則這些jar將被傳遞。

您的Eclipse在查找外部jar時遇到麻煩,請嘗試將其導入到您的工作區中,或者使用“添加外部jar”將它們引用到外部

在我的情況下,Maven沒有正確更新依賴關系。 我使用mvn clean,然后重新更新了依賴項,然后它得到了解決。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM