有关Android Studio中多个依赖具有同一引用

前两天在做一个比赛作品的时候,遇到了一个问题,就是我在module中远程添加了两个第三方依赖,但是这两个依赖中具有一个相同的引用,因此在安装的时候(Clean Project和Rebuild Project时不会报错,也不会清楚该错误)会出现如下错误:

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 Lokhttp3/Address;

大概意思就是有至少两个依赖具有对okhttp3中的Address具有相同的引用,因此出现了重复的引用,在编译的时候导致出现重复的dex文件,从而导致报错。

对于上述错误,解决方法如下:

android {
    ...
    }
    configurations {
        all*.exclude group: 'com.squareup.okhttp3', module: 'okhttp'
    }
}

即在module的build.gradle文件中添加如上代码即可。

这里写图片描述
上述代码的格式为:其中group后面接上图中第一个红线划记的部分,module后面接上图中第二个红线划记的部分。

你可能感兴趣的:(这些年我爬过的坑)