解决You should manually set the same version via DependencyResolution问题.

1.前几天添加了最新版本号为2.1.14-RC1的RxJava的依赖

2.今天去添加Rx生命周期的依赖库


3.添加完点击Sync Now,出现如下错误提示:

Error:Execution failed for task ':app:preDebugBuild'.
> Android dependency 'io.reactivex.rxjava2:rxandroid' has different version for the compile (2.0.1) and runtime (2.0.2) classpath. You should manually set the same version via DependencyResolution(和下图报错显示一致哈)

4.在网上搜了好几种方式,都试了下,无果..

第一种尝试:

添加 subprojects 下面的代码块到project的build.gradle 文件,再Clean and Build again,我没有成功,报错依旧..

allprojects {
    repositories {
       //...
    }

    subprojects {
        project.configurations.all {
            resolutionStrategy.eachDependency { details ->
                if (details.requested.group == 'com.android.support'
                && !details.requested.name.contains('multidex') ) {
                    details.useVersion "25.4.0"
                }
            }
        }
    }
}

第二种尝试:

包重复,剔除即可.然而我并没有在我的项目中找到重复的..

......


最后的解决方法:

Github上看RxJava的版本号,由几天前的2.1.14-RC1改为了2.1.14,ok,将项目中的版本号修改如下图,再Sync Now,报错就不见了!!



??我的疑问??

后来不明所以的我又用清奇的脑回路把版本号换回了2.1.14-RC1,Sync Now之后,又不报错了!!现在无论使用2.1.14还是2.1.14-RC1都是正常的,Why?!

哪位大神知道原因,请指点下,谢谢!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值