You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Gradle从3.0.1迁移至4.4后Android Studio构建失败:找不到指定依赖

解决Gradle迁移后ModuleVersionNotFoundException的问题

你遇到的这个报错是典型的混淆了Gradle分发版本和Android Gradle Plugin(AGP)版本导致的——你想升级的是Gradle分发版本到4.4,但错误地把AGP版本也改成了4.4,而这个版本的AGP根本不存在!

问题根源

com.android.tools.build:gradle是Android Gradle Plugin的依赖,它和Gradle分发版本有严格的对应关系:Gradle 4.4对应的AGP版本范围是3.1.0~3.2.0,不存在AGP 4.4这个版本,所以构建工具找不到对应的依赖包。

修复步骤

1. 修正Project级别的build.gradle配置

打开项目根目录下的build.gradle(注意是Project级,不是Module级),找到dependencies块里的classpath配置,把AGP版本改成和Gradle 4.4兼容的版本,比如3.1.4:

buildscript {
    repositories {
        google()
        jcenter()
    }
    dependencies {
        // 替换成兼容Gradle 4.4的AGP版本
        classpath 'com.android.tools.build:gradle:3.1.4'
    }
}

2. 确认Gradle分发版本配置

打开gradle/wrapper/gradle-wrapper.properties文件,确保distributionUrl指向Gradle 4.4的分发包,这个是你想要升级到的版本,保持不变即可:

distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

3. 同步项目并清理缓存

  • 在Android Studio中点击右上角的Sync Project with Gradle Files按钮,同步配置
  • 如果还是有问题,可以执行File > Invalidate Caches / Restart清理缓存后重新构建

额外提示

以后升级Gradle时,一定要注意AGP和Gradle版本的对应关系,避免版本不匹配的问题:比如AGP 3.1.x对应Gradle 4.4~4.6,AGP 3.2.x对应Gradle 4.6~5.3,以此类推。

内容的提问来源于stack exchange,提问作者Kisan Thapa

火山引擎 最新活动