Проблемы компиляции Android в RSA 8.0.1 (Eclipse 3.6) - NoClassDefFoundError: sun / security / x509 / X500Name - PullRequest
0 голосов
/ 05 апреля 2011

Я плавно установил плагин ADT для затмения.Когда я создал свой первый проект для Android, сразу же появилась ошибка компиляции ниже.Я обнаружил, что sun/security/x509/X500Name находится в rt.jar, поэтому я попытался добавить это к моему пути сборки, но это заставляет проект потреблять много памяти при компиляции (я нахожу это необычным).Кто-нибудь смог решить эту проблему?Я использую jdk1.6.0_24.Я видел другие смутные посты, в которых говорилось, что мне нужно использовать Sun JDK.Я уже использую это, и у меня уже есть это в моем JAVA_HOME.Буду признателен за любую помощь, которую вы можете предоставить.Спасибо.

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)

Ответы [ 2 ]

1 голос
/ 26 сентября 2011

Не найденный класс используется SignedJarBuilder из Android SDK. Решением может быть не использование подписи 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>
0 голосов
/ 04 мая 2011

Я установил автономную Eclipse 3.6 IDE (Helios), и она работала как шарм. Исходя из этого, я пришел к выводу, что это никогда не будет работать с IBM RSA 8.0.1 (даже если он основан на Eclipse 3.6).

...