Android Studio dexForClass

来源:互联网 发布:部门信息表sql 编辑:程序博客网 时间:2024/06/06 18:27

Error:Execution failed for task ‘:app:transformClassesWithDexForDebug’.

com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files define

某一个class(项目中重复引用的依赖)

在虚拟机上面正常运行,但是build apk 或者 真机运行就会造成上面这个错误
这错误是干嘛的呢。

重复引用

现如今,android项目会越做越大,最后导致整个项目引用的包有重复的,最常见的可能就是support-v4的包
运行时出现上文的错误
主要是dex 这玩意
在项目配置文件中添加

defaultConfig {
……………………
multiDexEnabled true
}

就是将重复的引用包合并或者忽略
再次运行后报如下错误

Error:Execution failed for
task:’app:transformClassesWithJarMergingForDebug’.

com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: okhttp3/Address.class

看出来了,merge 合并,就是将重复类在编译器中只拥有一个
接着在添加

android{        configurations {         all*.exclude group: 'com.aaa.xxxx', module: 'xxxx'     }}

其中
group为依赖地址
module为依赖包
将报错信息重复的地址以及包放上去就ok了
FINE

原创粉丝点击