Unity 2020.2.7 Gradle构建失败:无法解析launcher:classpath求助
Unity 2020.2.7 Gradle构建错误:无法解析com.android.tools.build依赖的解决方案
问题重现
构建时出现以下Gradle错误:
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 FAILURE: Build failed with an exception. * What went wrong: A problem occurred configuring project ':launcher'. > Could not resolve all artifacts for configuration ':launcher:classpath'. > Could not find gradle.jar (com.android.tools.build:gradle:3.6.0). Searched in the following locations: https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.6.0/gradle-3.6.0.jar > Could not find builder.jar (com.android.tools.build:builder:3.6.0). Searched in the following locations: https://dl.google.com/dl/android/maven2/com/android/tools/build/builder/3.6.0/builder-3.6
已尝试勾选自定义Gradle构建模板,修改classpath为com.android.tools.build:gradle:5.6.4,配置JDK 1.8.291为JAVA_HOME,但问题未解决。
解决方案
1. 修正AGP与Gradle版本的混淆问题
你错误地将Gradle版本号(5.6.4)当成了Android Gradle Plugin(AGP)的版本号配置到classpath中。Unity 2020.2.7适配的AGP版本为3.6.0,对应的Gradle wrapper版本才是5.6.4,需分别配置:
调整mainTemplate.gradle中的AGP版本
打开Assets/Plugins/Android/mainTemplate.gradle,修改buildscript块:
buildscript { repositories { // 添加国内镜像源,解决Google Maven访问问题 maven { url 'https://maven.aliyun.com/repository/google' } maven { url 'https://maven.aliyun.com/repository/jcenter' } mavenCentral() } dependencies { // 恢复为Unity适配的AGP版本 classpath 'com.android.tools.build:gradle:3.6.0' // 保留Unity自动生成的其他依赖(如unityLibrary相关) } }
配置Gradle wrapper版本为5.6.4
打开Assets/Plugins/Android/gradleTemplate.properties,修改distributionUrl:
distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.4-all.zip
2. 清理缓存
- 删除项目根目录下的
Library文件夹(建议先备份项目) - 删除用户目录下的Gradle缓存:
- Windows:
C:\Users\[你的用户名]\.gradle - macOS/Linux:
~/.gradle
- Windows:
- 在Unity中执行
File → Build Settings → Android → Clean Build
3. 确认Unity的JDK配置
打开Unity的Edit → Preferences → External Tools,确保JDK路径指向你安装的JDK 1.8.291,而非Unity内置JDK(部分版本内置JDK可能存在兼容性问题)。
内容的提问来源于stack exchange,提问作者rasool shiri
相关产品推荐
相关产品推荐

