Skip to content

Android Gradle 插件版本找不到问题解决

问题描述

在 Android 开发中,构建项目时可能会遇到如下错误:

Could not find com.android.tools.build:gradle:7.3.3.
Searched in the following locations:
  - https://plugins.gradle.org/m2/com/android/tools/build/gradle/7.3.3/gradle-7.3.3.pom
  - https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/7.3.3/gradle-7.3.3.pom
Required by:
    project:

这个错误表示 Gradle 无法找到指定版本的 Android Gradle 插件(AGP),通常是由于版本号配置错误、依赖库缺失或环境配置问题导致的。

解决方案

1. 验证并修正 Android Gradle 插件版本

首先需要理解 com.android.tools.build:gradle:$version 是指 Android Gradle 插件(AGP)版本,而不是 Gradle 本身的版本。这两个版本需要兼容。

版本兼容性

2. 配置正确的仓库源

确保在项目的 build.gradle 文件中配置了正确的仓库:

groovy
// 项目根目录的 build.gradle
buildscript {
    repositories {
        google()        // 必须添加
        mavenCentral()  // 必须添加
    }
    dependencies {
        classpath "com.android.tools.build:gradle:7.3.3" // 使用正确的版本
        // 其他依赖...
    }
}

// 所有项目的仓库配置
allprojects {
    repositories {
        google()
        mavenCentral()
    }
}

重要

google() 仓库必须包含在内,因为 Android Gradle 插件存放在 Google 的 Maven 仓库中。

3. 配置正确的 Gradle JDK 版本

Android Studio 中的 Gradle JDK 配置不匹配也会导致此问题:

  1. 打开 File → Settings → Build, Execution, Deployment → Build Tools → Gradle
  2. Gradle JDK 下拉菜单中选择 Android Studio java home
  3. 点击 Apply 然后 OK
  4. 重新构建项目

Gradle JDK 设置

4. 检查网络连接和代理设置

有时网络问题会导致依赖下载失败:

  • 检查网络连接是否正常
  • 如果是公司网络,可能限制了某些仓库的访问,尝试切换网络
  • 检查代理设置是否正确

5. 刷新 Gradle 依赖

在终端中运行以下命令强制刷新依赖:

bash
./gradlew clean build --refresh-dependencies

6. 确保 Java 环境正确配置

命令行和 Android Studio 使用的 Java 版本可能不同:

bash
# 检查当前 Java 版本
java -version

# 设置 JAVA_HOME 环境变量指向正确的 JDK 11
export JAVA_HOME=/path/to/jdk11

推荐使用 JDK 11

Android Gradle 插件 7.0+ 推荐使用 JDK 11,确保环境变量 JAVA_HOME 指向正确的 JDK 版本。

7. 检查 Kotlin 版本兼容性

如果项目使用 Kotlin,确保版本兼容:

groovy
// build.gradle (Module-level)
dependencies {
    implementation "org.jetbrains.kotlin:kotlin-stdlib:1.9.20"
}

总结

解决 "Could not find com.android.tools.build:gradle" 错误的关键步骤:

  1. 确认版本兼容性 - 检查 AGP 和 Gradle 版本是否匹配
  2. 配置正确仓库 - 确保包含 google()mavenCentral()
  3. 设置正确 JDK - 在 Android Studio 中配置 Gradle JDK 为 Android Studio java home
  4. 检查网络环境 - 确保可以访问所需的 Maven 仓库
  5. 刷新依赖缓存 - 使用 --refresh-dependencies 参数

按照上述步骤逐一排查,通常可以解决此构建错误。如果问题依旧,建议检查项目的具体配置和开发环境设置。