Android - 解决第三方重复 compile 的问题
怎么查看第三方库依赖了其他什么库呢?很简单,打开终端,在project根目录下执行下面的命令:
1 | ./gradlew :app:dependencies --configuration compile |
如上图所示,我们可以看到 support-appcompat-v7 包下面,是由以下几个子包构成的:support-annotations、support-v4、support-vector-drawable、animated-vector-drawable
然后 support-v4 包下面又有 support-compat、support-media-compat、support-core-utils、support-core-ui、support-fragment构成。
如箭头所指的,我们常用的黄油刀 ButterKnife 8.5.1 版本它就依赖了support 25.1.0,然而我们项目用的却依赖了最新的 25.3.0 版本的 support,这个时候该如何解决呢?
当然是选择排除掉 ButterKnife 的 supprot 而用我们自己依赖的最新 support 啊!
直接排除整个group:
1 | compile ('com.jakewharton:butterknife:8.5.1') { |
排除group里面的一个module:
1 | compile ('com.github.hotchemi:permissionsdispatcher:2.1.3') { |
直接排除一个module :
1 | compile ('com.orhanobut:hawk:2.0.1'){ |