【问题标题】:Android studio 3 and Gradle 3.0.0 - Dependency has different version for compile and runtime classpathAndroid studio 3 和 Gradle 3.0.0 - 依赖有不同版本的编译和运行时类路径
【发布时间】:2017-11-06 14:45:04
【问题描述】:

更新到 Gradle 版本 3.0.0 和 Android Studio 3.0 后,我收到以下错误:

错误:任务 ':app:appNameDebugBuild' 执行失败。

Android 依赖 'com.android.support:recyclerview-v7' 对于编译 (24.0.0) 和运行时 (25.4.0) 有不同的版本 类路径。您应该通过手动设置相同的版本 依赖解析

我确实在我的项目中搜索了版本为 24.0.0 的任何内容,但没有找到任何内容。在 gradle 上,我定义了一个版本为 25.4.0 的变量,并将其用于 compile/implementation 依赖项。

如何检查哪个库或模块正在使用 24.0.0 版本?我该如何解决这个问题?

【问题讨论】:

  • 在gradle文件中,依赖24.0.0和25.4.0有两个版本,请让两个版本一致
  • 请将您的 gradle 文件添加到问题中
  • @OğuzhanDöngül 在 gradle 文件上我只声明了 25.4.0。用 24.0.0 找不到任何东西。
  • @PramodYadav 太多 gradle 文件需要添加依赖项。正在更新大项目。
  • 如果您放置了 gradle 文件,我们会查看它并可能会看到您缺少什么(如果您的 gradle 中有任何内容)。那是你的选择。

标签: android android-gradle-plugin


【解决方案1】:

尝试将此 subprojects 块添加到您的主/顶级 gradle 文件中。 再次清理并构建。

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"
                }
            }
        }
    }
}

【讨论】:

  • 感谢您的回答,好方法!但仍然得到同样的错误。我仍然无法弄清楚谁在尝试获取这个 24.0.0
  • 确实解决了问题。我没有将此代码应用于主 gradle 文件。
猜你喜欢
  • 1970-01-01
  • 2018-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-20
  • 2023-03-06
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多