2011-04-05 38 views
0

我爲eclipse安裝了ADT插件。當我創建我的第一個Android項目時,馬上就會出現下面的編譯錯誤。我發現sun/security/x509/X500Name位於rt.jar中,因此我嘗試將其添加到我的構建路徑中,但是這會導致項目在編譯時吃掉大量內存(我發現這很不尋常)。有沒有人能夠解決這個問題?我正在使用jdk1.6.0_24。我已經看到其他模糊的帖子,說我需要使用Sun JDK。我已經在使用它,並且我已經在我的JAVA_HOME中使用了它。我會很感激你能提供的任何幫助。謝謝。RSA 8.0.1中的Android編譯問題(Eclipse 3.6) - NoClassDefFoundError:sun/security/x509/X500Name

java.lang.NoClassDefFoundError: sun/security/x509/X500Name 
    at com.android.sdklib.internal.build.SignedJarBuilder.writeSignatureBlock(Unknown Source) 
    at com.android.sdklib.internal.build.SignedJarBuilder.close(Unknown Source) 
    at com.android.sdklib.build.ApkBuilder.sealApk(Unknown Source) 
    at com.android.ide.eclipse.adt.internal.build.BuildHelper.finalPackage(Unknown Source) 
    at com.android.ide.eclipse.adt.internal.build.BuildHelper.finalDebugPackage(Unknown Source) 
    at com.android.ide.eclipse.adt.internal.build.builders.PostCompilerBuilder.build(Unknown Source) 
    at org.eclipse.core.internal.events.BuildManager$2.run(Unknown Source) 
    at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) 
    at org.eclipse.core.internal.events.BuildManager.basicBuild(Unknown Source) 
    at org.eclipse.core.internal.events.BuildManager.basicBuild(Unknown Source) 
    at org.eclipse.core.internal.events.BuildManager$1.run(Unknown Source) 
    at org.eclipse.core.runtime.SafeRunner.run(Unknown Source) 
    at org.eclipse.core.internal.events.BuildManager.basicBuild(Unknown Source) 
    at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(Unknown Source) 
    at org.eclipse.core.internal.events.BuildManager.build(Unknown Source) 
    at org.eclipse.core.internal.events.AutoBuildJob.doBuild(Unknown Source) 
    at org.eclipse.core.internal.events.AutoBuildJob.run(Unknown Source) 
    at org.eclipse.core.internal.jobs.Worker.run(Unknown Source) 
+0

http://stackoverflow.com/questions/2247998/noclassdeffounderror-eclipse-and-android/9916751#9916751 我同樣的問題和上面的鏈接固定它。 – 2012-04-01 17:54:50

回答

0

我安裝了一個獨立的Eclipse 3.6 IDE(Helios),它的工作就像一個魅力。基於此,我得出的結論是,這將不會與IBM的RSA 8.0.1一起工作(即使它基於Eclipse 3.6)。

1

未找到的類由Android SDK的SignedJarBuilder使用。一個解決辦法是不使用Android SDK的簽約,但籤創建.apk文件分開,由jarsigner命令。

我沒有使用Maven簽約 - http://code.google.com/p/maven-android-plugin/wiki/SigningAPKWithMavenJarsigner

您可以指定按以下方式調試簽字:

<keystore> 
    ${user.home}${file.separator}.android${file.separator}debug.keystore 
    </keystore> 
    <storepass>android</storepass> 
    <keypass>android</keypass> 
    <alias>androiddebugkey</alias>