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;
回答
所以我通過執行以下操作來解決這個問題:
- 刪除您的項目中的
./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...
並使緩存失效並重新啓動它。
刪除.gradle文件夾修復了我的問題。感謝幫助! –
在AS 3.0 Beta 7上的問題相同,不幸的是這仍然不適用於我的情況。 – Kikiwa
已經嘗試了以上所有解決方案,但不適用於AS 3.0 beta 7.請幫助 –
您應該能夠通過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'
}
在我的情況'com.android.volley'被添加了兩次,我也添加了排除語句,現在它的工作正常。運行這個腳本的 –
給了我'不能從9.0.1'確定java版本。我使用Android Studio 3.0更新了Gradle從4.1到4.2.1 – androidtitan
@androidtitan只有Java 8與Android兼容 –
此錯誤可能有多種原因。 沒有乾淨和重建或像這樣做爲我做這項工作。
對我來說,問題是依賴:
compile 'org.jetbrains:annotations-java5:15.0'
我刪除它,一切運行良好。
您是如何得出這個結論的?通過試驗和錯誤? –
瞭解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'
}
}
}
在我的情況的罪魁禍首是SendGrid lib下,加入這一點,它得到了修正:
compile 'com.github.danysantiago:sendgrid-android:1',{
exclude group: 'org.apache.httpcomponents', module: 'httpclient'
}
我使用Studio的3.0.0版本。在我的情況下,有唯一的解決方案:我已經從我的項目中的「libs」文件夾中刪除舊的JAR:它是具有依賴性的「ksoap2」包。使用Gradle獲得的包通常不會相互衝突,至少在使用最流行的包時。但是如果libs文件夾中包含所有自己的依賴關係,則可能會破壞您的構建。
檢查您的依賴項以獲取最新版本,通常它與您的任何依賴項的版本不一致。
1.Build>清理項目 2.重建項目
檢查詳細日誌的依賴性導致合併問題,並更新相同。對每個依賴重複相同的操作。
將「compile」更改爲「compileOnly」 這是對我有用的東西。
通過移除Android的數據綁定庫解決了這個:
dataBinding {
enabled = true
}
這不是一個有效的答案,因爲你將無法使用數據綁定。如果它對你很好,就意味着你不要在你的應用程序中使用數據綁定 – x10sion
嘗試內搖籃這段代碼,它的工作對我來說..
android {
defaultConfig {
multiDexEnabled true
}
}
我從消除gradle這個和BLA嘗試其他意見bla bla,但加入multiDexEnabled true
解決我的問題,我調查了我的apk已經達到了超過64K的方法。
編號:https://developer.android.com/studio/build/multidex.html)
我Android Studio中3.0面臨同樣的問題。1,我嘗試了所有可能的情況下,如上面提到的什麼工作對我來說,我終於解決了這個問題通過
解決方法1:
- 關閉Android Studio中
- 刪除位於
C:\Users\YourComputerName\.gradle
不是從應用程序的.gradle
文件夾.gradle
- 重新啓動機器人工作室
它會下載所有必要的罐子,並添加到您的構建路徑
溶液2:
- 刪除重複的罐子從庫中的應用程序文件夾/庫
- 重新運行再次應用
因爲如果有在build.gradle
文件中已經定義的重複的jar文件它引起問題。
這解決了我的問題。它可以幫助別人..
Linux用戶呢?我得到同樣的錯誤。請指導我 –
做同樣的事情,我在你的linux中提到。即轉到終端的.gradle的位置就像'〜\ .gradle \' –
我正在嘗試,但它不可見..您試圖解釋哪個位置?我在哪裏安裝了我的Android工作室或項目位置? –
我使用 的Android 3.0.1工作室構建 #AI-171.4443003,建於2017年11月9日
我從libs文件夾中刪除JAR文件。這對我來說很好
有時它可能由於同一個庫(jar文件)出現兩次或者您的項目已達到64k個方法限制而發生。
解決方法: 1)刪除數據綁定,如果你的項目中使用這個 2)從lib文件夾中刪除相同的類型庫,或從C //用戶刪除.gradle文件// // your_pc的gradle中3 )應用此。你的build.gradle
android {
defaultConfig {
multiDexEnabled true
}
}
- 1. 塞米鬆DEBUG_INFO格式
- 2. 錯誤大廈簽名APK:主要塞米鬆容量超過
- 3. 塞米鬆例外 - 我解決不了
- 4. 錯誤的MAC OSX 10.10約塞米蒂
- 5. Android的咖啡測試失敗,地塞米松對於調試Android的測試
- 6. Android Studio 3.0 Canary 2更新錯誤
- 7. 更新Android studio 3.0 Beta 2錯誤
- 8. Android Studio 3.0 Beta5編譯錯誤
- 9. Apache James 3.0-beta4啓動問題
- 10. AWS機器人工作室塞米鬆錯誤ID不能在[0,0xFFFF的]:65536儘管multiDexEnabled的=真
- 11. RxJava zipWith使用Android Studio 3.0在Kotlin中的IDE錯誤
- 12. 錯誤在OS X上做muPdf時約塞米蒂
- 13. 無法在約塞米蒂
- 14. 在Mac OS約塞米蒂
- 15. 在Android Studio 3.0佈局編輯器中渲染錯誤
- 16. 錯誤將字節碼DEX:原因:地塞米松無法解析版本52字節代碼
- 17. Android Studio:在Android Studio中遇到錯誤
- 18. 麻煩的約塞米蒂
- 19. 的Android Studio錯誤
- 20. Android Studio錯誤
- 21. 的Android 3.0工作室BETA4不能重命名文件,並建立自己的錯誤有時
- 22. 亞行在Android Studio 1.1 Beta4中沒有響應
- 23. 過Android Studio 3.0加納利1:搖籃同步錯誤
- 24. 我將android studio升級到3.0,加載產品錯誤
- 25. 更新Android Studio 3.0和Gradle版本4.1後出現SweetAlertDialog錯誤
- 26. Android Studio 3.0加載錯誤加納利4
- 27. 使用上約塞米蒂約塞米蒂上安裝Mac的OpenCV的
- 28. 在Android Studio中compileDebugJavaWithJavac錯誤
- 29. NSOutlineView在NSPopover在OSX 10.10約塞米蒂
- 30. Android Studio 3.0中的java.time在哪裏?
顯示'build.gradle' –
@IntelliJAmiya這不是重複的報告問題。至少對我而言,問題始於AS 3.0 beta 4,我已經使用multidex。 – ADev
如何?我沒有特權,我認爲 – ADev