查看方式
执行命令:
./gradlew 模块名:dependencies
其中“模块名”替换为你自己项目的实际模块名称,如app. 上面命令会在控制台打印结果,可以不方便查看,可以将结果输出到文件,再打开文件查看.如
./gradlew 模块名:dependencies > dep.log
结果分析
- 下面这张图是我一个工程里执行结果的筛选部分.
- 背景: 工程编译报错“Program type already present: androidx.versionedparcelable.ParcelImpl”,而这个类文件就是位于“androidx.versionedparcelable:versionedparcelable:1.0.0”中的.
- 通过执行结果可以看出“com.android.support:appcompat-v7:28.0.0”和“com.google.android.material:material:1.0.0”包含了同样的包,最后导致了冲突.
- 最好避免引入具有冲突的包
- 将会冲突的包排除出去. 如根据本例,具体操作如下: 修改前:
implementation 'com.google.android.material:material:1.0.0'
修改后:
implementation ('com.google.android.material:material:1.0.0') {
exclude group: 'androidx.versionedparcelable', module: 'versionedparcelable'
}
参考
快速查看Gradle项目类库依赖情况