这两天更新完小组的代码,庆幸竟然没有冲突,然后习惯性的clean一下项目,OK没事,好了可以开始运行了。点击运行,突然冒出了个莫名的错
Error:Execution failed for task ':app:dexDebug' .com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\Program Files\Java\jdk1.7.0_25\bin\java.exe'' finished with non-zero exit value 2
网上搜了一下,都说是jar包重复的问题,检查了无数遍,也注释了很多代码,还是没法解决问题。最后只能用最后一招了,拿梯子出来去找谷歌......
刚好找到了遇到相同问题的国外友人
Sync: OK
Make Project: OK
Clean: OK
Run: Error
仔细看了一下他的解决方案,发现原来方法数超过65536也会报这个问题。于是在build.gradle加了分包配置
defaultConfig {
......
multiDexEnabled true
}
此外,在android 5.0 以下的设备,还需要继承MultiDexApplication,或者如果继承Application的,需要重写attachBaseContext(),并在那里面启动MultiDex。
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
OK!问题解决!