2013-08-27 23 views
0

我在Netbeans中創建了一個包含少數非平臺特定類和接口的小型JAR庫。然後,我通過將它放在libs文件夾中,在Android Eclipse項目中使用此JAR文件。然後我可以將任何類或接口導入到android代碼中,沒有任何問題。我也可以擴展Android View類,並實現JAR文件中包含的接口,並且這個自定義視圖顯示在佈局編輯器(在Eclipse中),沒有任何問題。在運行時創建一個外部JAR針對JDK 1.7結果NoClassDefFoundError

當我嘗試在模擬器上運行應用程序時,問題就出現了。它崩潰了,logcat給出了一個NoClassDefFoundError,抱怨說,儘管我將它包含在構建路徑中,但它無法解析JAR文件中的類。

我最初構建了針對JDK 1.7的JAR文件,但我碰巧嘗試將其更改爲JDK 1.6,然後應用程序可以正常工作。

有沒有人遇到過這個? JDK 1.7與Android不兼容?

javac -version報告1.7.0_17

回答

0

看起來好像JDK 1.6需要編譯但工具本身(即Eclipse中)上運行1.7 OK,指示here

1

的Android這麼想的支持JDK 1.7

+0

你有鏈接到文件的地方這是陳述? – Kerry

+0

ADT是硬編碼,只有Java編譯器1.5和1.6符合https://android.googlesource.com/platform/sdk/+/master/eclipse/plugins/com.android.ide.eclipse.adt/src/com /android/ide/eclipse/adt/AdtConstants.java。您可以重新編譯ADT,但我發現除了重新編譯整個Android之外,沒有簡單的方法可以做到這一點。 – silentnuke

相關問題