& ldquo; Сбой преобразования в формат Dalvik с ошибкой 1 & rdquo; на внешней банке

Для этого вы можете использовать эмулятор. Взгляните на эту страницу: Android Emulator . Обратите внимание на следующие два аргумента:

  1. -netdelay Установите эмуляцию латентности сети на. Значение по умолчанию - нет. См. Таблицу в эмуляции сетевой задержки для поддерживаемых значений.
  2. -netspeed Установите эмуляцию сетевой скорости в. Значение по умолчанию заполнено. См. Таблицу в эмуляции сетевой скорости для поддерживаемых значений.

902
задан 6 revs, 3 users 62% 26 February 2012 в 20:37
поделиться

21 ответ

Я решил проблему.

Это конфликт файлов JAR.

Похоже, у меня есть два JAR-файла на моем пути сборки, которые содержат один и тот же пакет и классы.

smack.jar и android_maps_lib-1.0.2

Удаление этого пакета из одного из файлов JAR решило проблему.

271
ответ дан 4 revs, 3 users 81% 26 February 2012 в 20:37
поделиться

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

0
ответ дан 2 revs 26 February 2012 в 20:37
поделиться

Для пользователей NewRelic :

Если вы интегрировали в свой файл newrelic jar, это происходит, когда новая версия неактуальна.

Решение :

  • Обновите новую реликвную банку до последней версии. На затмении, просто щелкните правой кнопкой мыши на проекте и обновите newrelic. Или вы можете загрузить новую версию напрямую.
1
ответ дан amalBit 26 February 2012 в 20:37
поделиться

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

0
ответ дан Rani Fayez Ahmad - Superlinux 26 February 2012 в 20:37
поделиться

Моя проблема была вызвана ADT версии 12.0 и интеграцией ProGuard. Эта ошибка хорошо документирована, и решение находится в документации

Решение находится здесь

Командная строка ProGuard

8
ответ дан 2 revs 26 February 2012 в 20:37
поделиться

-Удалите все ваши библиотеки из вашего пути сборки Java. И добавь это снова. - Очистите свой проект.

Запустите его.

0
ответ дан Pratik Dasa 26 February 2012 в 20:37
поделиться

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

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

0
ответ дан Nick 26 February 2012 в 20:37
поделиться

В моем случае у меня добавлен jar exteranl. Так что я переместил положение внешнего jar в верхнюю часть ссылки Android в Project Prop ---> Java buildPath ---> Ссылки проекта

4
ответ дан sha 26 February 2012 в 20:37
поделиться

В моем случае

project-> properties-> путь сборки Java -> вкладка «Порядок и экспорт» -> снимите флажок android-support-v4.jar

5
ответ дан Mufrah 26 February 2012 в 20:37
поделиться

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

Для меня решение было обновить Proguard до последней версии, надеется, что это кому-то поможет.

1
ответ дан Lectere 26 February 2012 в 20:37
поделиться

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

0
ответ дан Nakul Sudhakar 26 February 2012 в 20:37
поделиться

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

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

1
ответ дан 2 revs 26 February 2012 в 20:37
поделиться

У меня была точно такая же ошибка с проектом, содержащим protobuf lite ( Protocol Buffers от Google) в его classpath. Я предполагаю, что причиной было protobuf-lite.jar, которое было в моем classpath, и папка проекта была построена на моей предыдущей машине. Когда я скачал Maven и пересобрал файл protobuf-lite.jar, затем добавил его заново как пользовательскую библиотеку, в мой проект все работало нормально.

3
ответ дан 2 revs, 2 users 71% 26 February 2012 в 20:37
поделиться

Обновление Proguard до последней версии решило это для меня.

  • Мой путь proguard был C:\Program Files (x86)\Android\android-sdk\tools\proguard\
  • Я скачал новую версию из здесь
  • и заменил папки bin и lib

СПАСИБО БОГУ!

7
ответ дан 2 revs, 2 users 89% 26 February 2012 в 20:37
поделиться

Если у вас ADT версии 12+, вы должны обновить Proguard с 4.4 -> 4.6 (как описано здесь здесь ). Кроме того, вы должны оставить файл ... \ bin \ proguard.bat в оригинальной форме.

Просто скачайте его из Интернета и скопируйте папку lib из загруженного пакета в:

[Каталог установки Android SDK] \ tools \ proguard \ lib

53
ответ дан Kocus 26 February 2012 в 20:37
поделиться

В общем, эта проблема возникает, когда в пути сборки есть ненужные файлы JAR.

Я столкнулся с этой проблемой, работая над IntelliJ IDEA . Для меня это произошло потому, что я добавил библиотеки JUnit и Mockito , которые компилировались во время выполнения. Это должно быть установлено на «тестирование» в свойствах модуля.

7
ответ дан 4 revs, 2 users 56% 26 February 2012 в 20:37
поделиться

Я столкнулся с этой проблемой, но мое решение было двояким. 1.) Мне пришлось добавить целевую версию Android в project -> properties -> Android . 2.) У меня не было всех надстроек Google сторонних разработчиков. Щелкните в диспетчере AVD SDK в разделе доступных пакетов -> сторонние надстройки -> Google Inc . Я загрузил все SDK, и это решило мою проблему.

5
ответ дан 2 revs, 2 users 57% 26 February 2012 в 20:37
поделиться

Ни одно из перечисленных решений не помогло мне.

Вот где у меня возникла проблема:

Я добавил внешний JAR-файл jSoup в путь моего проекта, сначала поместив его в исходную папку с именем «libs», а затем щелкнув правой кнопкой мыши по нему. , Путь сборки -> добавить к пути сборки. Это бросило ошибку преобразования Dalvik. Он сказал, что я «уже включил» класс из этого файла JAR. Я осмотрел каталог проекта и обнаружил, что место, где он «уже включен», на самом деле является каталогом bin. Я удалил файл JAR из каталога bin и обновил проект в Eclipse, и ошибка исчезла!

6
ответ дан 2 revs, 2 users 73% 26 February 2012 в 20:37
поделиться

Я только что установил новейшее затмение с новейшим API и новейшими SDK и инструментами, но спустя годы эта ошибка не устареет. Я трачу день, чтобы понять это. Перепробовал все. Напрасно. Потому что это сообщение очень общее, и множество других проблем поднимут его. Таким образом, решения, на которые указывают одни, не будут работать на другие .

Хороший первый подход - перейти в «Окно»> «Установки»> «Android»> «Build» и «UNCHECK» «Пропустить упаковку и извлечение ...». Таким образом, вы будете иметь больше подсказок о вашей конкретной ошибке при сборке, а не только об экспорте.

В моем случае я получил «Dx неподдерживаемая версия файла класса ...» . Эту ошибку я не видел, сообщил здесь. Итак, основываясь на этом, я обнаружил, что некоторые старые фляги, которые я использую, были скомпилированы с 1.6, а другие с 1.7. Поэтому я изменил уровень соответствия компилятора IDE по умолчанию на 1.6 («Окно»> «Настройки»> «Java»> «Компилятор»), и после полной очистки и перестройки каждой зависимости, которую я имел, я наконец смог создать свой APK.

0
ответ дан PFROLIM 26 February 2012 в 20:37
поделиться

Привет Ранее у меня было 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. И я избавился от этой проблемы.

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

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

0
ответ дан Neha Shukla 26 February 2012 в 20:37
поделиться

Перейдите в Проект »Свойства» Путь сборки Java »Библиотеки и удалите все, кроме« Android X.Y »(в моем случае Android 1.5). нажмите ОК. Перейдите в «Проект» »Очистить» Выбранные ниже чистые проекты »выберите свой проект и нажмите« ОК ». Это должно сработать.

Также возможно, что у вас есть файл JAR, расположенный где-то в папках вашего проекта (я скопировал файл JAR Admob в свою папку src), а ЗАТЕМ добавил его как библиотеку путей Java. Он не отображается в проводнике пакетов, поэтому вы не замечаете его, но он подсчитывается дважды, вызывая ужасную ошибку Dalvik 1.

Другой возможной причиной может быть конфликт имен пакетов. Предположим, у вас есть пакет com.abc.xyz и класс с именем A.java внутри этого пакета, а также другой проект библиотеки (который добавляется в зависимость этого проекта), который содержит тот же com.abc.xyz.A.java , то вы получите точно такую ​​же ошибку. Это означает, что у вас есть несколько ссылок на один и тот же файл A.java , и вы не можете правильно его построить.

Другими способами это может произойти, если вы случайно или сознательно отредактируете / добавите что-либо в файле пути к классам вручную. В некоторых случаях мы можем вручную добавить путь android.jar в файл пути к классам для создания документа java. При удалении этого после того, как сгенерированный javadoc код будет работать нормально. Пожалуйста, проверьте и это, если что-то еще происходит.

826
ответ дан 22 November 2019 в 21:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: