«Преобразование в формат Dalvik не удалось с ошибкой 1» на внешнем JAR

908

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

Неожиданное исключение верхнего уровня:
java.lang.IllegalArgumentException: уже добавлено: Lorg / xmlpull / v1 / XmlPullParser;
....
Преобразование в формат Dalvik не удалось с ошибкой 1

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

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

Мишель
источник
Эта статья может помочь вам исправить эту ошибку в случае, если вы используете проект библиотеки в своем рабочем пространстве.
Нгуен Минь Бин
4
Я попробовал это, и он дал ту же ошибку. Я наконец исправил это, добавив библиотеку в Свойства-> JavaBuildPath-> Проекты и добавив туда библиотеку. Он называется «Обязательные объекты на пути сборки:».
27
Эта проблема стала жестокой для меня. Этого почти достаточно, чтобы отказаться от кодирования Android. Ни одно из решений не работает для меня. Я просто должен постоянно пытаться экспортировать сбой с ошибкой Dalvik 1, и в конце концов это будет успешно. Сборка релиза занимает 15-30 минут. Это полная катастрофа.
Энтони
Если вы используете два компьютера в одной рабочей области с программным обеспечением для совместного доступа к файлам, оно иногда дублирует папку workspace-> project-> bin-> com как com 1, com 2. Просто удалите все с помощью 1 или 2, очистите ваш проект, и вы готовы идти.
Озан Атмар

Ответы:

826

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

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

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

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

user408841
источник
4
У меня была та же проблема, и вышеупомянутые шаги user408841 работали для меня.
Арунабх Дас
112
Привет. Это можно исправить, просто выбрав «Проект» Очистить »Очистить проекты, выбранные ниже», выберите свой проект и нажмите «ОК». игнорируя 1-й бит
Курру
79
Я довольно запутался с этим решением. Если вы удалите все jar-файлы и библиотеки, как вы собираетесь успешно скомпилировать проект?
Чеок Ян Ченг
3
Я обнаружил, что единственный способ, которым это сработало для меня, это ОЧИСТИТЬ ВСЕ ПРОЕКТЫ! Особенно те, от которых зависит оскорбительный проект.
Рой Хинкли
7
Я новичок в разработке для Android из .NET, и, честно говоря, эта ошибка воплощает мой опыт работы с ней. Серьезно ... что ты собираешься делать с этим сообщением об ошибке? Это абсолютно бессмысленно. 'Dalvik' ?? Ты что?? Верни меня в визуальную студию: p
Дэвид Мастерс
271

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

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

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

smack.jar а также android_maps_lib-1.0.2

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

мишель
источник
18
+1 - В общем, это конфликт файлов JAR. В частности, это может быть конфликт в любых двух файлах JAR. В моем случае конфликт был между jackson-all-1.7.4.jar, jackson-core-asl-1.5.4.jar и jackson-mapper-asl-1.5.4.jar. Я удалил две 1.5.4 банки и оставил 1.7.4 все.
jmort253
Если у вас есть ScoreloopUIjar-файлы в каких-либо библиотечных проектах, которые вы добавили в свой проект, например, как я добавил проект в свою игру AndEngine, эти jar-файлы также мешают вашим, даже если они не находятся на пути сборки вашего собственного проекта.
pqn
1
Я указал android-sdk / platform / android-10 / android.jar вручную в .classpath, затем я изменил на 2.3.3 (Android 10) в свойствах проекта, что вызвало конфликт обоих android.jar. Удаление лишнего в Java Build Path сделало
свое дело
2
С моей стороны конфликт возник из-за ActionbarSherlock, который уже включает пакет поддержки Android, который был включен дважды.
Тобиас
Просто для информации: в моем случае из-за сбоя было то, что разные цели android не были одинаковыми в обоих проектах: android: targetSdkVersion = "xx"
Andreas Mattisson
126

Решение для Windows 7:

Подтверждено, что проблема вызвана командной строкой ProGuard в файле
[Каталог установки Android SDK] \ tools \ proguard \ bin \ proguard.bat

Отредактируйте следующую строку, чтобы решить проблему:

call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %*

в

call %java_exe% -jar "%PROGUARD_HOME%"\lib\proguard.jar %1 %2 %3 %4 %5 %6 %7 %8 %9
Ноа
источник
это не сработало для меня, но комментирование строки proguard из моего файла default.properties не позволило устранить ошибку. Кажется, моя проблема как-то связана с Proguard. я только получал «Преобразование в формат Dalvik не удалось с ошибкой 1» при попытке экспортировать проект. Какие-нибудь мысли?
Бен Х
я попробовал вышеупомянутое предложение снова, и удалил и повторно добавил мой проект библиотеки LVL, и теперь это работает. Не уверен, что именно это исправить, но это работает. Слава Богу. я потратил часы на это.
Бен Х
Windows Vista, и это сработало для меня. Ранее я пытался изменить путь SDK на progra ~ 2, переустановить, очистить проект, удалить библиотеки и исправить и т.д. ... Так что спасибо, Ной!
Мудар
Огромное спасибо, Ной, у меня это сработало и в Windows 7. Ошибка началась после того, как я обновил ADT до версии 12.
Kevin
Решил мою проблему на Windiws 7.
poiuytrez
94

Вы можете легко решить эту проблему (с помощью Eclipse Android Developer Tools, Build: v22.0.1-685705), отключив меню> «Проект»> «Автоматически создавать» при экспорте (не) подписанного приложения Android. После этого не забудьте включить его снова.

Тон Сноей
источник
2
Это решило это в моем случае. В противном случае проблема возникает спорадически и без определенной причины (например, плохая банка или путь)
Дирк Конрад Коэтси
Это сводило меня с ума! Единственное решение, которое сработало для меня. Интересно, почему.
PrivusGuru
1
Это решило для меня - другие решения, возможно, помогли бы также, но это было последним, прежде чем заставить это работать.
pertz
Я потратил 4 часа на проработку каждого предложения, которое смог найти, и, наконец, добрался до этого. Спасибо - это решило проблему немедленно.
Squonk
Очень простое решение, но оно работает! Спасло меня несколько часов бессмысленной борьбы с Eclipse. Попробуйте, прежде чем пытаться найти более сложное решение.
Фрагон
53

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

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

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

Kocus
источник
3
Это было моей проблемой в нескольких ADT. Загрузка и замена Proguard JAR работает.
г-н С
Вау, спасибо, это исправило это для меня, хотя мне также нужно было прояснить некоторые предупреждения. stackoverflow.com/q/4525661/38258
Ник Готч
Я изменил версию Proguard с 4.4 на 4.9, после этого моя проблема все еще не решена.
Хирен Патель
1
Я просто должен был сделать это сам, перейдя с 4.7 -> 4.11 (последний на данный момент здесь: sourceforge.net/projects/proguard/files ). Я просто переименовал старый <sdk>/tools/proguardкаталог и переместил полный архив proguard4.11на старый путь. Вуаля! Теперь, если бы я только мог вернуть свой предыдущий час ... -_-
qix
1
Спасибо! это решит мою проблему правильно. Моя проблема возникает, когда я обновляю свой SDK из SDK Manager, и Proguard был сброшен до исходной версии, которая поставлялась вместе с API уровня 11. После того, как я обновил Proguard, установите Jar на последнюю версию. и это работает! Моя ссылка: java.dzone.com/articles/my-reminder-how-fix-conversion
mmw5610
41

РЕДАКТИРОВАТЬ (новое решение):

Похоже, что предыдущее решение - только обход. Мне удалось окончательно решить проблему навсегда: в моем случае было несоответствие в файлах android-support-v4 в моем проекте и в проекте Facebook, на который есть ссылка в моем проекте.

Я обнаружил эту ошибку, выполнив проверку Lint (Инструменты Android / Run Lint: Проверка на наличие общих ошибок)

Мое предыдущее решение:

Я пробовал любое возможное решение на этом сайте - ничего не помогло !!!

Наконец, я нашел ответ здесь: https://groups.google.com/forum/#!topic/actionbarsherlock/drzI7pEvKd4

Простые шаги:

Перейти к проекту -> снять флажок строить автоматически

Перейдите в Project -> Clean ..., очистите как проект библиотеки, так и проект приложения

Экспортируйте ваше приложение как подписанный APK, в то время как Автоматическая сборка по-прежнему отключена

Павелико
источник
Спасибо, что работали на меня для моего проекта cocos2dx js, используя adt eclipse 23
снежинки74
Ошибка: неизвестный параметр «0409» в аргументе № 1
Иман Мараши
30

Вот еще один сценарий и решение:

Если вы столкнулись с этой проблемой недавно после обновления ADT для Eclipse:

  1. В своем проекте приложения проверьте наличие любых связанных исходных папок, указывающих на ваши библиотечные проекты (они имеют имена в форме «LibraryName_src»).
  2. Выберите все эти проекты, щелкните правой кнопкой мыши, выберите « Build Path » -> « Remove from Build Path ».
  3. Выберите « Также отсоединить папку от проекта » и нажмите « Да ».
  4. Очистить, перестроить и заново развернуть проект.

Кажется, причина в том, что некоторые предыдущие версии ADT связывали исходные папки проектов библиотеки с «дочерними» проектами, и текущая комбинация ADT / Dex больше не совместима с этим решением.

РЕДАКТИРОВАТЬ: это подтверждается записью в блоге разработчиков Android, в частности, этой - см. Восьмой абзац.

оборота TheTerribleSwiftTomato
источник
1
Это, безусловно, самый полезный ответ на мою конкретную проблему . Огромное спасибо!!!
Билл Обезьяна
Это то, что я мог бы успешно использовать, а не очень одобренный ответ пользователя 408841.
Рик
29

Перейдите в Project, а затем снимите флажок «Автоматически строить». Затем попытайтесь экспортировать проект, и ошибка исчезнет.

kgandroid
источник
27

Это также может быть вызвано тем, что вы добавили Android.jarфайл в путь сборки, возможно, из-за случайного быстрого исправления в Eclipse. Удалите его, щелкнув правой кнопкой мыши Project -> путь сборки -> настроить путь сборки -> android.jar , удалить.

Tom Dignan
источник
25

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

BTR
источник
Перезапуск Eclipse + очистка проекта + ручная сборка работали для меня.
dodgy_coder
Очистка сработала для меня .... так что если у вас есть хорошая отладочная сборка, которую вы выполняли на реальных телефонах, а затем перейдите к выпуску экспорта и увидите эту ошибку ... попробуйте сначала очистить все проекты.
января
16

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

  • Delete проект от Eclipse
  • Удалить файлы в \binи \genиз папки проекта
  • Удалить ссылки на библиотеки в .classpathфайл в корневой папке проекта
  • Перезапустите Eclipse из командной строки: eclipse -clean
  • Import проект
  • Щелкните правой кнопкой мыши на проекте - выберите Properties> Java Build Path> Librariesи удалить все остальное , чемAndroid XX.Y
  • Наконец cleanпроект, ждать автоматического здания или Buildему
  • Запустите и теперь это работает! По крайней мере для меня...

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

Darkendorf
источник
Было предупреждение от анонимного пользователя, что это привело к катастрофическим последствиям. Попробуйте на свой страх и риск!
PaulG
это работает для меня, но я не делал: "eclipse -clean" и не удалял библиотеки.
Никоминск,
Удаление binпапки сделало это для меня.
boltup_im_coding
14

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

Это сделало библиотеку Android снова добавленной к моим ссылочным библиотекам, так что теперь у меня есть две ссылки на JAR-файлы Android, поэтому я удалил один из них, и теперь он прекрасно компилируется.

Решение. Удалите проект из Eclipse IDE, а затем повторно импортируйте его, а затем проверьте наличие вышеуказанных решений.

Peter Mortensen
источник
Спасибо! Это помогло мне с нуля.
herbertD
10

Я столкнулся с этой проблемой сегодня. Очистка и восстановление не решили проблему. Удаление и повторный импорт проекта также не помогли.

Я наконец отследил это до плохих дополнений к моему файлу .class. Я думаю, что это было добавлено инструментами плагина, когда я пытался исправить другую проблему, удалив ее, избавившись от ошибки сборки «Преобразование в формат Dalvik не удалось с ошибкой 1»:

<classpathentry kind="lib" path="C:/dev/repository/android-sdk-windows/platforms/android-3/android.jar">
    <attributes>
        <attribute name="javadoc_location" value="file:/C:/dev/repository/android-sdk-windows/docs/reference"/>
    </attributes>
    <accessrules>
        <accessrule kind="nonaccessible" pattern="com/android/internal/**"/>
    </accessrules>

Джо Фернандес
источник
9

Для меня дополнительная ссылка JAR появилась в моем пути сборки. Я удалил это, и теперь это работает.

брюкс
источник
8

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

Решение здесь

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

крокодил
источник
Спасибо Крок, я не думаю, что ошибка очень хорошо задокументирована - я не нашел ее после часа поиска решения.
Кевин
Вы, вероятно, пишете - проблема в том, что одно сообщение об ошибке имеет слишком много причин. Google должен иметь еще несколько сообщений, чтобы помочь пользователям изложить проблему. Вы можете утешиться тем, что мне потребовалось два дня, чтобы решить проблему, когда я с ней столкнулся ...
Croc
Комментарий 11 на странице обсуждения связанной ошибки решил проблему здесь: установите вывод сборки для Verbose (из Window> Preferences> Android> Build) и найдите JAR или классы, которые использует компилятор, но их там быть не должно. Удалить их. Опыт сборки без проблем снова.
Джулио Пьянкастелли
8

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

  1. Щелкните правой кнопкой мыши свой проект, выберите свойства.
  2. Появится диалоговое окно, выберите «Путь сборки Java» в левом меню.
  3. Удалите «Зависимости Android» и «Частные библиотеки Android» на правой панели, затем нажмите «ОК».
  4. Очистите свой проект (выберите меню Проект -> Очистить)
  5. Щелкните правой кнопкой мыши свой проект, выберите «Инструменты Android» -> «Исправить свойства проекта».
  6. Очистите проект еще раз.
  7. Перезагрузите компьютер
  8. Откройте затмение и экспорт apk

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

mvmanh
источник
Их сообщение об ошибке должно быть более конкретным. Вы экономите мое время. Спасибо.
Чайник
7

В моем случае проблема на самом деле с проектом OpenFeint API. Я добавил OpenFeint как проект библиотеки:

проект библиотеки]! [1]! [Введите описание изображения здесь,

Это также добавляется в путь сборки, ADT tools 16 выдает ошибку в этом сценарии.

Щелкните правой кнопкой мыши по вашему проекту и выберите путь сборки, настройте путь сборки, а затем посмотрите изображение и удалите ваш проект OpenFeint отсюда, и все готово :)

Введите описание изображения здесь

AZ_
источник
7

Я нашел что-то еще. Android использует /libsкаталог для файлов JAR. Я неоднократно видел ошибку «Преобразование в формат Dalvik с ошибкой 1», всегда, когда я допускал ошибку в моих файлах JAR.

Теперь я обновил Roboguice до более новой версии, поместив новый файл JAR в /libs каталог и переключив путь к классу на новую версию. Это вызвало ошибку Dalvik.

Когда я удалил один из файлов JAR Roboguice из /libsпапки, ошибка исчезла. Очевидно, Android получает все файлы JAR /libs, независимо от того, какие файлы вы указали в пути сборки Java. Я точно не помню, но я думаю, что Android начал использовать /libsпо умолчанию, начиная с Android 4.0 (Ice Cream Sandwich, ICS).

Peter Mortensen
источник
7

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

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

СЛАВА БОГУ!

Pinhassi
источник
7

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

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

mindReader
источник
О, спасибо за упоминание «В общем, кажется, что эта проблема возникает, когда в пути сборки есть ненужные файлы». После удаления ненужных файлов jar ошибка исчезла. :)
surendran
6

Ни одно из ранее предложенных решений не сработало для меня. В моем случае проблема возникла, когда я переключился с ссылки на папку с исходным кодом библиотеки на файл библиотеки JAR. Изначально в разделе «Свойства приложения Android» в разделе «Свойства приложения Android» находился проект библиотеки Android, и библиотека также сравнивалась в дереве проводника проекта как ссылка на исходный каталог библиотеки.

Во-первых, я просто удалил ссылку на каталог из дерева проекта и добавил библиотеку JAR в путь сборки, но это вызвало исключение.

Правильная процедура была (после изменения пути сборки и возврата ссылки на источник библиотеки):

  • правильно удалите ссылку на исходный каталог библиотеки, фактически удалив ссылку из проекта приложения Свойства \ страница Android

  • добавив JAR библиотеки в путь сборки проекта приложения, как обычно.

суперджо
источник
6

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

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

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

Andrew
источник
5

Все решения выше не сработали для меня. Я не использую какой-либо предварительно скомпилированный .jar. Я использую ошибки LVL и Dalvik, где все они связаны с библиотекой лицензирования рынка.

Проблема была решена путем удаления основного проекта и его повторного импорта (создание нового проекта из существующих источников).

olivierg
источник
5

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

java.lang.IllegalArgumentException: already added: package/MyClassclass;
[2011-01-19 14:54:05 - ...]: Dx1 error; aborting
[2011-01-19 14:54:05 - ...] Conversion to Dalvik format failed with error 1

Поэтому проверьте, добавляете ли вы jar с дублирующимися классами в ваш проект. Если да, попробуйте удалить один из них.

Это сработало для меня.

Seynorth
источник
см. мой ответ: stackoverflow.com/questions/2680827/…
Мишель
5

Часто для меня очистка проекта НЕ решает эту проблему.

Но закрытие проекта в Eclipse, а затем повторное открытие, похоже, исправляет его в этих случаях ...

Andrew
источник
1
То же самое для меня: закрытие Eclipse и повторный запуск обычно решают его. Затем я пытаюсь, но я не могу сделать второй экспорт, мне нужно перезапустить снова.
Тед
5

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

THE_DOM
источник
Мое решение было почти таким же, как и решение @THE_DOM. Щелкните правой кнопкой мыши проект, выберите «Инструменты Android», затем выберите «Добавить библиотеку совместимости». Это загрузит эти «сторонние дополнения», если у вас их нет (решение THE_DOM), но также добавит их в ваш проект. Является ли это решение просто плацебо или нет, еще неизвестно. :)
Крис
5

Я использую Android 1.6 и имел один внешний файл JAR. Что мне помогло, так это удалить все библиотеки, щелкнуть правой кнопкой мыши по проекту и выбрать « Инструменты Android» -> «* Исправить свойства проекта» (который вернул Android 1.6), а затем добавить внешний JAR-файл.

Джим Роудс
источник
5

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

Например, у меня была базовая библиотека globalmentor-core, которую также использовали globalmentor-google и globalmentor-android (последняя из которых - библиотека Android). В globalmentor-android pom.xmlмне пришлось пометить зависимость как «предоставленную», а также исключенную из других библиотек, в которые она была транзитивно включена:

    <dependency>
        <groupId>com.globalmentor</groupId>
        <artifactId>globalmentor-core</artifactId>
        <version>1.0-SNAPSHOT</version>
        <!-- android-maven-plugin can't seem to automatically keep this from being
             included twice; it must therefore be included manually (either explicitly
             or transitively) in dependent projects -->
        <scope>provided</scope>
    </dependency>

Затем в последнем приложении pom.xmlмне пришлось использовать правильный трюк, чтобы разрешить только один путь включения, а также не включать явно библиотеку ядра:

    <!-- android-maven-plugin can't seem to automatically keep this from being
        included twice -->
    <!-- <dependency> -->
    <!-- <groupId>com.globalmentor</groupId> -->
    <!-- <artifactId>globalmentor-core</artifactId> -->
    <!-- <version>1.0-SNAPSHOT</version> -->
    <!-- </dependency> -->

    <dependency>
        <groupId>com.globalmentor</groupId>
        <artifactId>globalmentor-google</artifactId>
        <version>1.0-SNAPSHOT</version>
        <exclusions>
            <!-- android-maven-plugin can't seem to automatically keep this from
                being included twice -->
            <exclusion>
                <groupId>com.globalmentor</groupId>
                <artifactId>globalmentor-core</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>com.globalmentor</groupId>
        <artifactId>globalmentor-android</artifactId>
        <version>1.0-SNAPSHOT</version>
    </dependency>
Garret Wilson
источник
Странная вещь для меня заключалась в том, что <extractDuplicates>true</extractDuplicates>в android-maven-plugin исправлена ​​проблема, mvn installно не mvn deployтам, где я получил описанную ошибку ... действительно странно
Karussell
5

В моем случае

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

Mufrah
источник
5

Просто очистите проект

Если это не работает, попробуйте другие решения

Ясин
источник
плюс 1 за простое решение
Shylendra Madda
И мне также нужно перезапустить Eclipse.
Дино Тв