android 中gradle依赖冲突解决

android项目开发中经常会遇到库依赖异常,大多是版本依赖的冲突问题,说明下常见的版本依赖冲突解决方式

首页看下我们项目的依赖关系

./gradlew dependencies :app:dependencies

这里写图片描述

:app表示依赖module
mac下运行可能人别不了命令行,运行chmod +x gradlew添加权限

可以看到依赖结构是树状结构,各库下又依赖了android的官方提供的一些库,如果依赖的库不是太多的话,可以使用transitive参数,使得依赖库所需的依赖不直接使用,在依赖库的module中同一级上做依赖关系

implementation 'com.android.support:appcompat-v7:26.1.0' 
    compile ('com.alibaba.android:vlayout:1.2.2@aar') {
        transitive = false
    }
    ```

transitive为false表示单独依赖,true为默认树状依赖

这种解决方式只用于当前的依赖包只是版本导致的,且版本变动不大,起码它的代码package路径一致,如果差异很大可以指定依赖关系中特定包不包含到依赖中

implementation ‘com.android.support:appcompat-v7:26.1.0’
compile (‘com.alibaba.android:vlayout:1.2.2@aar’) {
exclude group: ‘support-v4’
}
“`


版权声明:本文为u012400222原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。