Error:java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
Error:java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
Error:com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex
Error:com.android.dex.DexException: Multiple dex files define Lcom/google/zxing/integration/android/IntentResult;
Ошибка Dex В Android Studio 3.0 Beta4
Ответ 1
У меня такая же проблема с Android Studio 3.0 beta 4. Я нашел решение.
1. В меню Build
нажмите кнопку Clean Project
.
2. После завершения задачи нажмите кнопку Rebuild Project
в меню Build
.
Ответ 2
Для Android Studio 3.0 я должен был добавить это в мой gradle:
multiDexEnabled true
И это сработало!
Пример
android {
compileSdkVersion 25
buildToolsVersion '26.0.2'
defaultConfig {
applicationId "com.xx.xxx"
minSdkVersion 15
targetSdkVersion 24
versionCode 9
versionName "1.0"
multiDexEnabled true //Add this
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
shrinkResources true
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
Ответ 3
Поэтому я решил эту проблему, выполнив следующие действия:
- Удалить папку
./gradle
внутри вашего проекта - Удалите все папки сборки и кеш gradle. Я выполнил следующую команду:
Как?
cd ~/[your project root folder] && find . -name build -exec rm -rf {} \; && rm -rf $HOME/.gradle/caches/
Предполагая, что ваши файлы gradle находятся в папке $HOME/.gradle
.
- Внутри Android Studio перешли к
File > Invalidate caches / Restart...
и аннулировали кеши и перезапустили его.
Ответ 4
Попробуйте этот код внутри Gradle, он работает для меня..
android {
defaultConfig {
multiDexEnabled true
}
}
Ответ 5
Проверьте свои зависимости для последней версии, как правило, это несогласованность с версией любой из ваших зависимостей.
1.Build > Чистый проект 2. Перестройте свой проект
Проверьте подробный журнал зависимости, вызывающей проблему слияния, и обновите ее. Повторите то же самое для каждой зависимости.
Ответ 6
Вы должны иметь возможность получить причину этой ошибки, проверив ваши зависимости с помощью gradle и ища дубликаты следующим образом:
./gradlew -q app:dependencies
В моем случае во время сборки произошла ошибка:
Duplicate zip entry [httpcore-4.4.1.jar
и это было разрешено, выполнив это в моем build.gradle
:
implementation ('me.dlkanth:stetho-volley:1.0') {
exclude group: 'org.apache.httpcomponents'
}
Ответ 7
Я столкнулся с одной и той же проблемой в Android Studio 3.0.1, я пробовал все возможные случаи, потому что ничего не работало для меня, как упоминалось выше, наконец, я решил ее
Solution1:
- Закрыть Android Studio
- Удалить
.gradle
папку, расположенную вC:\Users\YourComputerName\.gradle
не из приложения.gradle
- Перезапустить студию Android
Он загрузит все необходимые банки и добавит в ваш путь сборки
Solution2:
- Удалить дубликат jar из папки libs в app/libs
- Повторно запустите приложение
Потому что, если есть дублированный файл jar, который уже определен в файле build.gradle
, он вызывает проблему.
Это решило проблему для меня. Это может помочь другим людям.
Ответ 8
Измените "компилировать" на "compileOnly" это то, что сработало для меня.
Ответ 9
Эта ошибка может иметь несколько причин. Никаких чистых и перестроек или подобных действий не было для меня.
Для меня проблема заключалась в зависимости:
compile 'org.jetbrains:annotations-java5:15.0'
Я удалил его, и все сработало нормально.
Ответ 10
В моем случае виновником был SendGrid lib, добавил это, и он получил исправление:
compile 'com.github.danysantiago:sendgrid-android:1',{
exclude group: 'org.apache.httpcomponents', module: 'httpclient'
}
Ответ 11
Я использую версию Studio 3.0.0. В моем случае было единственное решение: я удалил старые JAR из папки "libs" в моем проекте: это был пакет "ksoap2" с зависимостями. Пакеты, полученные с помощью gradle, обычно не конфликтуют друг с другом, по крайней мере, если вы используете самые популярные. Но старая JAR в папке libs может сокрушить вашу сборку, если она включает в себя все собственные зависимости.
Ответ 12
Решил это, удалив библиотеку привязки данных Android:
dataBinding {
enabled = true
}
Ответ 13
Я пробовал другие комментарии при удалении gradle и bla bla bla, но добавив multiDexEnabled true
решение моей проблемы, я исследую, что мой apk достиг Over 64K Method.
Ссылка: https://developer.android.com/studio/build/multidex.html)
Ответ 14
Я использую Android Studio 3.0.1 Build # AI-171.4443003, построенный 9 ноября 2017 года
Я удаляю файл jar из папки libs. И это отлично работает для меня.