首页 > 解决方案 > 无法升级 gradle Android Studio 3.4.,Gradle 5 依赖项随机中断

问题描述

当我试图将我的 Android Studio 升级到 3.4 时,更新并不顺利,而是一些依赖关系中断。就我而言,RxJava/RxKotlin 依赖项正在中断,但没有给出任何线索。即使这是随机发生的,因为我的4 个模块中的每个模块都有 RxJava/RxKotlin 代码,但依赖项仅在一个模块中失败。

在此处输入图像描述

我尝试了什么:

  1. 使缓存无效并重新启动。
  2. 删除 /build *module/build/ *module/.gradle/ & .gradle/
  3. 清洁项目
  4. 尝试在互联网上查找答案,这些是最接近的但不能解决问题。(他们不建议升级到 3.4)

    i)未解决的参考:Android Studio 3.4 中的 Observable 解释了我遇到的问题,线程正在转向不升级Gradle(这对我来说是最后一个选项)或确保在项目或其任何库中使用的 RxJava是 2.2.8)。出于这个原因,我尝试显式添加 RxJava 2.2.8(我之前没有在 RxKotlin 中获取它)并编写了一个 resolutionStrategy 来强制 Android Studio 在该特定模块中使用 RxJava 2.2.8 但没有解决问题:

    configurations.all {
           resolutionStrategy.force 'io.reactivex.rxjava2:rxjava:2.2.8'
    }
    

    ii)将 Gradle 更新到 3.4.0 后,RxKotlin 未正确解决,该版本尚未提供任何解决方案。如果是RxJava/ RxKotlinGradle 插件本身的问题,我什至怀疑 或者即使 RxKotlin 或任何其他库也是如此。

编辑:我在域模块中的依赖项如下所示:

dependencies {
    implementation Deps.kotlinStdLib
    implementation Deps.rxKotlin
    implementation Deps.dagger
    implementation Deps.timber
    implementation Deps.mobiusCore
    implementation Deps.mapboxGeoJSONCore
}

标签: androidandroid-gradle-pluginrx-javarx-kotlin2android-gradle-3.4.0

解决方案


尝试添加rxkotlin到依赖项(如果尚未添加):

dependencies {

    // rxKotlin ...is likely missing
    implementation "io.reactivex.rxjava2:rxkotlin:2.3.0"

    // rxJava:
    implementation "io.reactivex.rxjava2:rxjava:2.2.0"

    // rxAndroid bindings:
    implementation "io.reactivex.rxjava2:rxandroid:2.1.0"
}

推荐阅读