Невозможно выполнить dex: несколько файлов dex определяют Lbolts / AggregateException

Я знаю, что много проблем с dex сообщалось много раз раньше, но ни одно из решений, похоже, не работает в моем случае.

Консоль:

Unable to execute dex: Multiple dex files define Lbolts/AggregateException; Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lbolts/AggregateException; 

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

Другим решением является разметка любой дублированной библиотеки, явно добавленной в форме .jar. У меня нет таких библиотек.

В моем случае дублирующаяся библиотека: android-support-v7-appcompat.jar У меня есть (непосредственно ссылка из папки sdk) в этих двух контейнерах:

1.) Частные библиотеки Android

2.) Зависимости от Android

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

EDIT: NB, когда я добавляю в библиотеку проект v7compat library_project, он входит в оба контейнера. Должен быть какой-то способ, чтобы он включался только в один.

Может ли кто-нибудь помочь мне, как я могу это сделать?

Скриншот

Screenshot2 (невозможно удалить)

Solutions Collecting From Web of "Невозможно выполнить dex: несколько файлов dex определяют Lbolts / AggregateException"

РЕШЕННО ВНЕШНЕЕ

То, что на самом деле вызывало проблемы, это болт-андроидная библиотека. Было две РАЗЛИЧНЫЕ версии этого конфликта. Facebookdk поставляется с болтами-андроид-1.1.2, а appcompatv7 – с 1.1.4.

Я не отмечен контейнером частных библиотек Android в проекте библиотеки FacebookSDK, в котором содержится болт-андроид-1.1.2. В результате в моем проекте теперь была только одна версия, 1.1.4

Он отлично работает сейчас

Оказывается, дублирующие записи appcompatv7 никогда не беспокоили

Я столкнулся с этим недавно в своем собственном проекте, который вы можете использовать, вы можете перейти в свою папку Android вашего проекта. И в терминале нажмите эту команду «./gradlew app: dependencies», чтобы увидеть дерево зависимостей. Я нашел два пакета для андроидных болтов под фейсбуком sdk. Если вы исключите этот пакет из facebook sdk, все будет хорошо работать

 compile ('com.facebook.react:react-native:+') { exclude group: 'com.parse.bolts', module: 'bolts-tasks' } 

Это может произойти при добавлении фейсбука SDK на Android, вы можете решить его с помощью:

 compile ("com.facebook.android:facebook-android-sdk:4.1.0") { exclude group: 'com.parse.bolts', module: 'bolts-android' } 

Так как обновленная реакция версии 0.31.0, когда вы хотите интегрировать com.facebook.fresco:animated-gif:0.10.0 которого есть com.parse.bolts , вы можете сделать вот так:

  compile ('com.facebook.react:react-native:+') { exclude group: 'com.parse.bolts', module: 'bolts-tasks' } compile ('com.facebook.fresco:animated-gif:0.10.0'){ exclude group: 'com.parse.bolts', module: 'bolts-tasks' }