有时你会发现,在你使用Android Studio 进行编译的时候提示:
Error:Execution failed for task ':demo:dexDebug'.
> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'java.exe'' finished with non-zero exit value 2
为什么会这样呢?你就算是重启呀AndroidStudio,重启电脑也不行。
那么想想,只前有什么操作?是不是有新的Lib之类的引用库加入了?
这个时时候就不能只看最后的异常了,还要往上看,我发现的结果就是包名冲突,有重复的jar包名。这里的包名不是指jar的名称相同,而是指jar包里的相同的包名。排除冲突即可。
===============================================================
网上提供的另一种解决的办法,不过我发现对我这个异常来说,没有用。
----------XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX---------------------------
其实直接打开Gradle项目中的,对应项目的脚本文件 ,改成如下的就行了
dependencies {
compile project(':demo')
provided fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:support-v4:22.1.1'
compile 'com.android.support:appcompat-v7:22.1.1'
}
即将 引用的库的条件改为provided,不要用compile.因为它们已经是库了,再编译就。。。
参考URL:https://github.com/frankiesardo/icepick/blob/master/README.md#download