AndroidStudio進行Build時出現DexArchiveMergerException異常的解決辦法

浮沉半生發表於2018-03-07

今天在AndroidStudio中匯入了一個專案,編譯的時候沒有什麼問題,但是在執行Rebuild Project 和 Build APK(s)時報錯了,提示:

Error:Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.

> java.lang.RuntimeException: java.lang.RuntimeException: 

com.android.builder.dexing.DexArchiveMergerException: Unable to merge dex。

為了避免以後遇到時忘記了,所以把解決方法寫出來儲存一下,希望也能對各位同學提供點幫助。如果有些的不對的地方,也歡迎大家批評指正,在此表示感謝!

解決辦法一:

        在專案的build.gradle檔案中檢視自己匯入的依賴,看看是否有重複的,如果有的話刪除掉,重新進行編譯。

解決方法二:

        倘若在上一種解決方法沒有效果,再檢查一下build.gradle中是否有類似

    compile(name: 'class', ext: 'jar')
        這樣的程式碼,如果有的話,可以修改為下面這種寫法:
    compile files('libs/class.jar')

解決方法三:

        如果上述兩種都沒有解決問題,可以使用這種方法, 在build.gradle檔案中匯入這個依賴:                   

    compile 'com.android.support:multidex:1.0.1'

        然後在 build.gradle 檔案中的 defaultConfig 配置中新增配置:   

    multiDexEnabled true

        截圖如下:

       

        我就是使用這種方法解決了這個問題,上面的依賴記得要新增到build.gradle檔案中去。

解決方法四:

        我看到還有另外的解決方法,就是先將專案的.gradle資料夾給刪除掉,然後 Clean Project 即可。

        這個方案我也嘗試了一下,並沒有解決我遇到的這種情況,不過大家也可以嘗試一下,

        可能產生問題的原因不一樣,也許能夠解決別的情況。

        該方案可以參考部落格:http://blog.csdn.net/chw12341/article/details/78646720


好了,就先寫到這裡,希望也能夠對大家提供些幫助,如果有更好的解決方案,希望大家也能及時評論,共同進步,謝謝!

相關文章