新姿势-依赖排除
2016-12-05 本文已影响151人
叶落非秋
场景
简单的来说就是android studio 两个library都引用了相同的库,比如我有一个工程A,依赖了两个库,com.xxx.1和com.xxx.2,但是这两个库里它们都依赖了gson,这个时候编译就会报错
<code>Error:Execution failed for task ':app:transformClassesWithJarMergingForDebug'.
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/google/gson/Gson$5.class
</code>
解决方案
采用依赖排除即可,去除其中多余的引用,只保留一个,比如我要去除com.xxx.1里的gson依赖那么就可以这样
<code>
compile('gruop:module:version') {
exclude(group: 'com.xxx.1', module: 'gson')
}
eg.
compile('com.github.heygays:Jarvis:v1.0.0') {
exclude(group: 'com.google.code.gson', module: 'gson')
}
</code>