Преобразование в формат dalvik завершилось с ошибкой 1 (при добавлении gnu-crypto.jar) в eclipse - PullRequest
1 голос
/ 21 января 2012

Есть много вопросов, похожих на этот, но я попробовал все, и это не помогло.

Ошибка:

stack[top0]: type{java.lang.InterruptedException}
...while working on block 01d0
...while working on method handleConfirmation:(Ljavax/security/auth/callback/ConfirmationCallback;)V
...while processing handleConfirmation (Ljavax/security/auth/callback/ConfirmationCallback;)V
...while processing gnu/crypto/auth/callback/AWTCallbackHandler.class

[2012-01-21 15:31:22 - AppName] Dx 1 error; aborting
[2012-01-21 15:31:22 - AppName] Conversion to Dalvik format failed with error 1

Это происходит только тогда, когда япопробуйте добавить внешний jar для шифрования - gnu-crypto.jar.Что я пробовал:

  • Проект -> Очистить
  • Удаление проекта из затмения и его повторное импортирование
  • Изменение файлов proguard (каталогов bin и lib) на новейшие
  • Замена java -jar "% PROGUARD_HOME%" \ lib \ proguard.jar% * на java -jar "% PROGUARD_HOME%" \ lib \ proguard.jar% 1% 2% 3% 4% 5% 6% 7% 8% 9
  • Снятие флажка «Принудительная ошибка, когда внешние файлы jar содержат собственные библиотеки» (как вы это сделали) и проект очистки
  • Удаление всех файлов jar из пути сборки Java,затем Инструменты Android -> Исправить свойства проекта и снова добавить внешний jar

Ответы [ 2 ]

2 голосов
/ 22 января 2012

Похоже, что-то шаткое в выпуске gnu-crypto 2.1.0.Запуск dx на нем вручную приводит к упомянутой вами ошибке.

Вы можете попробовать добавить исходные коды для gnu-crypto непосредственно в ваше приложение или использовать вместо этого выпуск 2.0.1.

1 голос
/ 21 января 2012

Убедитесь, что вы удалили все потенциально двойные ссылки на jar с похожими классами. Это может произойти, ссылаясь на разные версии Android или ссылаясь на Android и JDK или JRE.

...