android - tools - eclipse luna




升級到ADT 22後,庫不會再添加到APK中 (5)

僅僅檢查Android私有庫是不夠的,我還必須在Android SDK Manager中安裝Android SDK構建工具

我有一個相當大的Android應用程序項目引用了多個庫項目。 一切都很好,直到我將eclipse ADT插件升級到最新版本(v22)。 當然我也升級了SDK。 我在eclipse中看不到任何編譯錯誤,但是當我在手機上運行項目時,我得到一個NoClassDefFoundError。

java.lang.NoClassDefFoundError: org.acra.ACRA
....

arca庫包含在引用的庫項目之一(在libs文件夾中),我可以在包explorer的“Android Private Libraries”中看到它,正如我所說的,沒有編譯錯誤。 該項目在其他未升級ADT的計算機上運行良好。

我已經嘗試了一大堆東西,包括但不限於:

  • 重新安裝android SDK
  • 下載新的ADT軟件包
  • 刪除我的所有代碼,再從git中獲取它
  • 將有問題的庫複製到應用程序項目中
  • 註釋掉使用這個庫的代碼 - 我只是為下一個庫獲得相同的錯誤

一切都沒有成功,所以我在這裡變得非常絕望。

如果有人能給我一個關於如何解決這個問題的提示,我會非常高興。


他的adt-dev帖子引用波士頓的街道:

升級時,並不總是檢查新的“Android專用庫”的“訂購和導出”。 android-support-v4.jar現在位於這個“Android私有庫”部分。

要解決此問題,請轉至“訂購和導出”並檢查“Android專用庫”。 然後刷新/清理/重建。

在為圖書館項目完成此“修復”後,您可能需要關閉並重新打開任何依賴項目,因為他們可能不會立即看到此“修復”。

給這個鏡頭,幸運的是它會解決你的問題。


我也有同樣的問題,我的adt22.0.1 。 上面的解決方案都沒有工作。 進一步,當添加一個外部庫項目到一個工作項目。我總是檢查工作項目的gen文件夾,如果外部庫項目的R有(和包名一起),那麼只有外部庫項目被導出。 並且在我的gen文件夾中沒有顯示外部庫的包名。

所以我檢查了project.properties文件,並沒有任何外部庫鏈接android.library.reference.1= present。 所以我手動添加了外部庫引用,儘管我已經從project->properties->Java Build Path->Projects->Add 。 所以手工編輯project.properties為我做了所有的工作。


我有同樣的問題。 這是因為eclipse項目。 為了解決這個問題,我在eclipse中創建了一個新項目,將我現有的項目類和資源複製到Eclipse中,然後再次啟動eclipse並添加了我的自定義包含。


我遇到過類似的問題,花了大約3個小時,但是這裡提出的所有決定都沒有幫助......最後我找到了問題的根源:我的項目文件&project.properties是只讀的。 當我在GUI中進行操作時,Eclipse只是靜靜地忽略了庫依賴關係中的任何更改!





adt