Преобразование в формат Dalvik не удалось с ошибкой 1 в Android на экспорт (adt 21)

Я знаю, что форма этого вопроса есть, но я не могу найти ничего, что соответствует моему сценарию, так что вот оно.

Мое приложение компилируется и отлично работает при тестировании в эмуляторе, но когда я пытаюсь экспортировать подписанный apk, я получаю Conversion to Dalvik format failed with error 1 . Журнал ошибок Eclipse показывает эту трассировку стека:

 com.android.ide.eclipse.adt.internal.build.DexException: Conversion to Dalvik format failed with error 1 at com.android.ide.eclipse.adt.internal.build.BuildHelper.executeDx(BuildHelper.java:751) at com.android.ide.eclipse.adt.internal.project.ExportHelper.exportReleaseApk(ExportHelper.java:269) at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.doExport(ExportWizard.java:296) at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard.access$0(ExportWizard.java:233) at com.android.ide.eclipse.adt.internal.wizards.export.ExportWizard$1.run(ExportWizard.java:218) at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:121) 

У меня нет коллизий именования, которые, по-видимому, есть у других людей (по крайней мере, это не так в ошибке), и я в тупике, почему он работает в эмуляторе, но я не могу экспортировать.

Кстати, я не использую ProGuard.

Solutions Collecting From Web of "Преобразование в формат Dalvik не удалось с ошибкой 1 в Android на экспорт (adt 21)"

Похоже, ADT 21 добавляет папку в ваш bin, называемый dexedLibs, который должен ускорить развертывание, помещая банки и библиотеки в предварительно скомпилированный код dex. У меня было две версии библиотеки поддержки, поэтому я удалил все файлы в папке и снова построил, и это сработало. Если я попытаюсь построить с любыми файлами там, сборка завершится неудачно, поэтому я должен удалить их перед каждым экспортом. Я использую ActionBar Sherlock, и это может противоречить предмету dexedLibs, потому что он не появится там, если папка изначально пуста.

Изменить: я использовал ActionBarSherlock, когда эта проблема возникла впервые, но недавно переключилась на ActionBarCompat . С момента переключения мне больше не нужно удалять папку dexedLibs при экспорте. Похоже, возможно, ActionBarSherlock виноват, но я не могу быть уверен.

Перейдите в проект и отмените выбор Build Automatically. Затем очистите проект и создайте все. Работала для меня, чтобы экспортировать подписанный пакет приложений

После многих попыток мне удалось выяснить причину возникновения этой проблемы. В общем, это вызвано ProGuard и, в частности, его оптимизацией. По крайней мере, в моем случае у меня было 4 поврежденных проекта с этой ошибкой, но после того, как я отключил оптимизацию ProGuard, все они были построены правильно. Итак, в вашем комментарии к конфигурации ProGuard: -оптимизации и -optimizationpasses options и add -dontoptimize

 # -optimizations ... # -optimizationpasses 5 -dontoptimize 

Надеюсь это поможет.