一、查询 Android 依赖库的配置
在遇到 依赖冲突 时 , 如果要 排查某个依赖的子库 时 , 就需要对该依赖库非常熟悉 , 最好是找出该依赖库位置 , 并 分析该依赖库的 Maven 配置文件 , 即 pom.xml 配置文件 ; 下面以 com.android.support:appcompat-v7 依赖库 为例进行演示 , 这个库经常会造成依赖冲突 ;
Android 官方提供的依赖库 , 都放在 SDK 的 extras 目录 下 , 如下图所示 :
其中 Android Support 依赖库的路径位置 , 在 D:\001_Develop\001_SDK\Sdk\extras\android\m2repository\com\android\support 路径中的依赖库如下图所示
这里以 appcompat-v7 依赖库为例 , 查看 23.3.0 版本的 com.android.support:appcompat-v7 依赖库 , 其目录为 D:\001_Develop\001_SDK\Sdk\extras\android\m2repository\com\android\support\appcompat-v7\23.3.0 , 依赖库内容如下 :
查看其 appcompat-v7-23.3.0.pom 依赖配置文件 , 发现该 pom 文件中有配置 com.android.support:support-v4 依赖 , pom 配置文件是 Maven 的依赖配置 , 其格式是 Xml 形式的 ;
<dependency>
<groupId>com.android.support</groupId>
<artifactId>support-v4</artifactId>
<version>23.3.0</version>
<type>aar</type>
<scope>compile</scope>
</dependency>
二、通过 ModuleDependency#transitive 依赖传递设置
在 dependencies 中配置依赖时 , implementation 依赖配置 后 , 可以 在闭包中 使用 transitive 函数 设置依赖是否传递 ,
如果为 transitive 函数设置 true 参数 , 则 包含传递依赖 ;
如果为 transitive 函数设置 false 参数 , 则 排除传递依赖 ;