Android Studio Flamingo:嵌入式Java与Gradle工具版本兼容问题求助
解决Android Studio Flamingo中Gradle 8.0.0依赖解析失败问题
问题详情
使用JDK 17、18时均触发相同错误:
Could not resolve all files for configuration ':classpath'.
Could not resolve com.android.tools.build:gradle:8.0.0.
项目依赖需求:
- project : > com.android.application:com.android.application.gradle.plugin:8.0.0
- project : > com.android.library:com.android.library.gradle.plugin:8.0.0
错误核心:找不到匹配com.android.tools.build:gradle:8.0.0的变体。项目当前配置要求组件满足:运行时使用、兼容Java 8、打包为jar、依赖外部声明库,且org.gradle.plugin.api-version值为8.0,但现有变体均不兼容:
- Variant 'apiElements':打包为jar、依赖外部库,但为编译时使用、兼容Java 11,不符合运行时使用+Java 8要求;未声明
org.gradle.plugin.api-version属性 - Variant 'javadocElements':运行时使用、依赖外部组件,但属于文档类型,不是项目需要的库类型;未声明Java版本、打包方式、
org.gradle.plugin.api-version属性 - Variant 'runtimeElements':运行时使用、打包为jar、依赖外部库,但兼容Java 11,不符合Java 8要求;未声明
org.gradle.plugin.api-version属性 - Variant 'sourcesElements':运行时使用、依赖外部组件,但属于文档类型,不是项目需要的库类型;未声明Java版本、打包方式、
org.gradle.plugin.api-version属性
解决方案
1. 统一Java版本配置
Gradle 8.0+和AGP 8.0+强制要求使用Java 11或更高版本,项目当前的Java 8配置是冲突根源,需修改:
- 根目录
build.gradle(或build.gradle.kts)中指定JDK工具链:
plugins { id 'com.android.application' version '8.0.0' apply false id 'com.android.library' version '8.0.0' apply false } java { toolchain { languageVersion = JavaLanguageVersion.of(11) } }
- 模块级
build.gradle中设置编译/目标版本:
android { compileSdk 33 defaultConfig { targetSdk 33 // 其他配置保持不变 } compileOptions { sourceCompatibility JavaVersion.VERSION_11 targetCompatibility JavaVersion.VERSION_11 } // 若使用Kotlin,添加以下配置 kotlinOptions { jvmTarget = '11' } }
2. 确认Gradle版本与AGP匹配
AGP 8.0.0要求Gradle 8.0及以上版本,检查gradle/wrapper/gradle-wrapper.properties:
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
若版本不符,修改后同步项目。
3. 清理缓存并同步
- 点击Android Studio工具栏的「Sync Project with Gradle Files」按钮同步项目
- 执行
File > Invalidate Caches... > Invalidate and Restart清理IDE缓存并重启
4. 检查仓库配置
确保根目录build.gradle中包含Google和MavenCentral仓库,AGP依赖需要从这些仓库拉取:
repositories { google() mavenCentral() }
内容的提问来源于stack exchange,提问作者Danial clarc
相关产品推荐
相关产品推荐

