問題背景
最近在項(xiàng)目中遇到這樣一個(gè)異常,異常信息如下:
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException: Process 'command 'D:\Work_Software\Java\jdk8_64\bin\java.exe'' finished with non-zero exit value 2
出現(xiàn)這種異常的背景是,我在向項(xiàng)目中集成友盟的推送時(shí)出現(xiàn)的,在把友盟的jar 引入后,編譯工程,就拋出了這種異常,在網(wǎng)上查了一下,好多人都遇到這種問題,幾乎都是引入三方包后編譯時(shí)拋出這種異常的,先在把我的解決方法貼出來,希望能幫到遇到類似問題的你。
解決方法
注:此異常是在Android studio IDE 上編譯android 工程時(shí),出現(xiàn)的,Eclipse (安裝了gradle)是否會出現(xiàn),不確定。
在android 工程目錄下工程的build.gradle 文件中android 下添加如下代碼:
android {
defaultConfig {
multiDexEnabled true
}
.......
}
上面的解決辦法,可以解決這個(gè)問題。原因是:我們的app方法數(shù)量已經(jīng)突破了65536的最大限制,需要使用多重dex,但是,有人說在miui,無法使用,本人沒有親測過,只是提一下,提醒一下各位,在開發(fā)時(shí)注意一下。