«Преобразование в формат Dalvik не удалось с ошибкой 1» на внешнем JAR - PullRequest
902 голосов
/ 21 апреля 2010

В моем приложении Android в Eclipse я получаю следующую ошибку.

НЕОЖИДАННОЕ ИСКЛЮЧЕНИЕ ТОП-УРОВНЯ:
java.lang.IllegalArgumentException: уже добавлено: Lorg / xmlpull / v1 / XmlPullParser;
....
Преобразование в формат Dalvik завершилось ошибкой 1

Эта ошибка появляется только тогда, когда я добавляю определенный внешний файл JAR в свой проект. Я долго искал возможное решение, но ни одно из возможных решений не сработало. Я даже пытался перейти на Android 1.6 вместо 1.5 (текущая версия, которую я использую).

Ответы [ 71 ]

1 голос
/ 06 октября 2013

В моем случае для устранения этой ошибки потребовалось отключить телефон от USB.

1 голос
/ 03 февраля 2012

Я прошел через шаги в этом ответе и все еще не получил разрешение. Я продолжал искать в Интернете и обнаружил, что вы можете получить эту ошибку, если вы пытаетесь экспортировать APK, когда устройство Android подключено к компьютеру.

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

0 голосов
/ 09 сентября 2012

Ни один из этих ответов не работал для меня. Моя проблема вызвана JUnit и Hamcrest. См. Также java.lang.IllegalArgumentException: уже добавлено: Lorg / hamcrest / BaseDescription; Преобразование в формат Dalvik не удалось с ошибкой 1

0 голосов
/ 18 октября 2012

Лучше включить все файлы * .jar в каталог "lib" дерева папок проекта. и таким образом вам не нужно будет определять путь сборки, перейдя к свойствам проекта. "lib" - это уже путь сборки

0 голосов
/ 10 июня 2014

Привет Раньше у меня было Android SDK Build tools 18.1.1 и Windows XP.тогда мое приложение работало правильно.

Но я обновил мою систему до Windows 7, а также обновил Android SDK Build tools to 19, чтобы иметь последние конфигурации.

Но у моего проекта есть файл xercesImpl-2.9.1.jar, поэтому, когда яЯ запустил приложение с новыми / обновленными конфигурациями. Я получал

Conversion to Dalvik format failed with error 1 while parsing org/apache/xerces/impl/xpath/regex/ParserForXMLSchema.class

Итак, я просмотрел все ответы, которые были упомянуты на этот вопрос, но не смог решить.Я задавался вопросом в течение 4 дней, а затем нашел эту ссылку, которая спасла мне жизнь, после прочтения этого я узнал, что проблема связана с xercesImpl-2.9.1.jar с инструментами Android SDK Build до 19.

Поэтому я понизил его до Android SDK Build tools до 18.1.1.И я избавился от этой проблемы.

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

Это вызвало у меня отчаяние.Надежда поможет другим.

0 голосов
/ 30 апреля 2014

Еще один случай с колдовством андроида, если ничего не работает, попробуйте увеличение вашего versionCode и versionName на 1 в манифесте.

У меня это сработало.

0 голосов
/ 11 декабря 2012

Если вы используете SDK Leadbolt ads в своем приложении и комбинируете «Уведомления о рекламе» и «Отображаемые объявления», вам нужно использовать pubxappCom.jar вместо pubxapp.jar для уведомлений, или вы получаете эту ошибку!

Удачного кодирования!

0 голосов
/ 28 ноября 2012

У меня была такая же проблема. когда я проверил, я увидел, что было 2 класса с одинаковыми именами, по 1 в каждом из добавленных мной внешних jar-файлов Мне пришлось удалить 1 из файла фляги. К счастью, я получил еще один файл jar для 1, который я удалил.

0 голосов
/ 30 сентября 2013

В большинстве случаев эта проблема вызвана ошибочной или поврежденной версией Proguard, которая по какой-то странной причине часто устанавливается из официального менеджера Android SDK

Не редактируйте файл bat Proguard , чтобы избежать дальнейших проблем. Если вы получите эту проблему, загрузите последнюю стабильную версию Proguard с официального сайта заменить все файлы proguard в

android-sdk\tools\proguard

с последними файлами proguard, извлеченными из загруженного архива.

Нет смысла удалять все зависимости от внешних библиотек, если разработчик добавляет библиотеку в свой проект, скорее всего, библиотека нужна.

0 голосов
/ 26 сентября 2013

Я нашел решение другим способом ... https://stackoverflow.com/a/14948244/1014288

Благодаря этому вы можете исправить отсутствие удаления и прочее

...