Дубликаты файлов, скопированных в APK log4j2.xml не могу понять, что исключить

#java #duplicates

#java #дубликаты

Вопрос:

Когда я пытаюсь запустить свое приложение, я продолжаю получать эту ошибку:

com.android.build.api.transform.Исключение TransformException: com.android.builder.packaging.Исключение DuplicateFileException: дубликаты файлов, скопированных в APK log4j2.xml

Файл1: /Users/matti/.gradle/caches/modules-2/files-2.1/org.biojava/biojava-core/4.2.0/a0713c21c575f39adc88985acc9cf37715324dab/biojava-core-4.2.0.jar

Файл2: /Users/matti/.gradle/caches/modules-2/files-2.1/org.biojava/biojava-phylo/4.2.0/a97ccd582c87683d0e91e9fefb176ae129a10318/biojava-phylo-4.2.0.jar

Файл3: /Users/matti/.gradle/caches/modules-2/files-2.1/org.biojava/biojava-structure/4.2.0/2da167b09a829735f38379c3ad3c922c09a0a312/biojava-structure-4.2.0.jar

Файл4: /Users/matti/.gradle/caches/modules-2/files-2.1/org.biojava/biojava-alignment/4.2.0/6395347f4c119d6a41b850dbb84ba85919976d37/biojava-alignment-4.2.0.jar

Как мне исключить эти файлы?

Комментарии:

1. У вас есть зависимости, которые могут вызвать такое поведение.

2. @ssc эти зависимости, похоже, находятся в WhereIsYourCode классе.

Ответ №1:

я столкнулся с аналогичной проблемой при попытке использовать Log4j2 в Android studio. каждый раз, когда я пытался запустить apk — сборку, сбой выполнялся для другого дубликата файла. в итоге я сделал это:

в build.gradle (модуль приложения):

добавьте следующее:

 packagingOptions {
    exclude '<name_of_file_to_exclude>'
}
  

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

Пример:

для сообщения об ошибке:

 Duplicate files copied in APK META-INF/maven/io.logz.sender/logzio-sender/pom.properties
  

вам нужно добавить:

 packagingOptions {
    exclude 'META-INF/maven/io.logz.sender/logzio-sender/pom.properties'
}