Android依赖库版本冲突的一个解决方法

本文介绍了一种解决Gradle依赖冲突的方法,通过设置统一的依赖版本来解决因不同版本依赖导致的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题简介

讲真对Gradle了解不是很深,在网上看了很多解决依赖冲突的文章还是很懵逼,重要是问题依然无法解决。病急乱投医,在StackOverflow上找到个答案问题解决了,虽然不是很懂。这里相当于记录一下,希望也对别人有用。

问题描述

我在添加上online.osslab:CircleProgress:1.0.0这个开源库之后就提示了依赖冲突:

这里写图片描述

原因在于这个库其内部依赖了com.android.support:cardview-v7:25.2.0,而当前的support库的版本都是26.0.0-alpha1,故产生了依赖冲突。

解决方法

在build.gradle文件中添加:

configurations.all {
  resolutionStrategy.eachDependency { DependencyResolveDetails details ->
      def requested = details.requested
      if (requested.group == 'com.android.support') {
          if (!requested.name.startsWith("multidex")) {
              //这里指定需要统一的依赖版本,这里统一为26.0.0-alpha1
              details.useVersion '26.0.0-alpha1'
          }
      }
  }
}

这里为Groovy的语法,大意就是将所有com.andriod.support的支持库版本强制为所制定的版本。所以依赖冲突问题解决。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值