Как исправить ошибку "Ошибка создания окончательного архива: дублировать запись: AndroidManifest.xml"
Я поместил два проекта в Eclipse, называемые Project1 и Project2.
Project1 независим, но Project2 должен быть зависим от Project1.
Когда я создаю Project2, сообщение об ошибке появляется следующим образом: Ошибка создания окончательного архива: дублирующаяся запись: AndroidManifest.xml
Ответы
Ответ 1
Я понял, в чем проблема. Я включил JAR файл с файлом AndroidManifest.xml, который противоречил моему собственному файлу AndroidManifest.xml проекта. Решение в моем случае состояло в том, чтобы перестроить JAR файл, убедившись, что он исключил свою версию AndroidManifest.xml, а затем повторно включил новую версию файла JAR в мой проект. Возможно, вам придется очистить проект после этого.
Ответ 2
Я думаю, вы используете Project1 в качестве библиотеки. Таким образом, при экспорте jar файла вы должны отменить AndroidManifest.xml на "Выбрать ресурс для экспорта".
Ответ 3
У меня была такая же проблема несколько дней назад, если вы поместили JAR в папку libs, а JAR - внутри AndroidManifest.xml, вы получили ошибку. Если вы поместите JAR вне проекта (например, на рабочем столе), а в "java Build Path" вы используете "Добавить внешний JAR", проблема решена.
Ответ 4
Я получил второй (ungracefull) файл AndroidManifest.xml, включив пакет Android.R вместо com.example.mypackage.R.
Симптомы: сборка, похоже, сработала, но запуск показал существующую ошибку в рабочей области, которую необходимо было перенести в первую очередь.
Один AndroidManifest.xml был найден в классах, другой - в файле resource.ap_.
Я просто быстро включил (включая android.R) рабочее пространство в ад.
edit: не работает, рабочее пространство все еще в аду; проблемы в проектах, которые нравились исправлять...
edit1: не удается найти пакет, в котором должен содержаться файл AndroidManifest.xml.
edit2: Я считаю, что второй файл манифеста в Android.jar - кажется, что каждый файл манифеста приводит к созданию 1 R.class. Я удалил полное рабочее пространство. Потому что это была площадка. (Затем я установил Git.)
Ответ 5
Очистка Project1 может помочь.
Ответ 6
Возможно, у вас есть аналогичные зависимости времени компиляции в проекте библиотеки и проекте приложения, а dex-er не распознает дубликаты.
Если это так, измените область действия зависимостей в вашем проекте приложения на предоставленную область.
Зависимости будут включены, поскольку они находятся в проекте библиотеки, и они не будут дублироваться, потому что они "предоставляются" при компиляции проекта приложения.
Ответ 7
Вы получите серию сообщений об ошибках, связанных с AndroidManifest, main.xml, activity_main. Поэтому лучшим решением будет переименовать их (используя shift + ctrl + R) из одного из проектов в другое.
Это решило мою проблему.
Ответ 8
Я мог бы исправить это только в Android Studio, удалив каталог out/и вернув его снова.