Подтвердить что ты не робот

Дублировать файлы во время упаковки APK

Я использую Android Studio, и у меня есть несколько библиотек, которые я там использую.

У меня есть:

android-query-full.0.25.10.jar
gson-2.2.4-sources.jar
slide-menu.jar

Я определил в файле build.gradle для компиляции всего каталога libs следующим образом:

dependencies {
    compile 'com.android.support:support-v4:13.0.+'
    compile fileTree(dir: 'libs', include: '*.jar')
}

Все это отлично работает.

Теперь я хочу добавить еще одну библиотеку "PullToRefresh" Я упаковал папки Res и Src в один файл jar с исходным кодом из eclipse (как и с SlideMenu.jar) и добавил вновь созданный банку в качестве библиотеки для моего проекта рядом со всеми остальными.

когда я пытаюсь создать свой проект, я получаю следующую ошибку из gradle:

Gradle: : duplicate files during packaging of APK C:\Code\TestProject\Test\build\apk\Endilo-debug-unaligned.apk
Gradle: Execution failed for task ':Endilo:packageDebug'.
> Duplicate files copied in APK res/values/attrs.xml
    File 1: C:\Code\TestProject\Test\libs\PullToRefresh.jar
    File 2: C:\Code\TestProject\Test\libs\PullToRefresh.jar

Это очень странно, поскольку я получаю дубликаты из одного и того же файла jar.. что здесь происходит!?

4b9b3361

Ответ 1

это случилось со мной. Я экспортирую jar из eclipse adt, и я получил ту же ошибку. Я решил проблему, открыв файл jar с помощью WinRAR и удалив все папки, кроме двух папок: META-INF и пакетную папку классов, в моем случае это была папка com. В моем случае это произошло из-за файла AndroidManifest.xml внутри jar. В вашем случае это потому, что res/values ​​/attrs.xml, но могут возникнуть другие конфликты, и этот файл является первым конфликтом.

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

Ответ 2

Вы найдете еще одну банку внутри экспортированной jar bin/ папки; используйте этот.