You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity 2021.3.24f1构建Android项目Gradle证书路径错误求助

Unity 2021.3.24f1打包Android Gradle构建失败(PKIX证书错误)解决方案

核心问题:从jcenter拉取org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.3.72等依赖时触发sun.security.validator.ValidatorException,本质是Java环境无法验证jcenter的SSL证书,与Gradle版本无关(所以更换版本无效)

解决方案

1. 替换jcenter仓库为维护中的镜像

jcenter已停止维护,优先替换为mavenCentral或国内镜像:

  • 在Unity编辑器中开启自定义Gradle模板:Player Settings > Publishing Settings > Build,勾选Custom Gradle Template和Custom Launcher Gradle Template
  • 打开生成的mainTemplate.gradle和launcherTemplate.gradle文件,将所有jcenter()替换为:
    mavenCentral()
    // 或国内阿里云镜像(推荐网络不佳时使用)
    maven { url 'https://maven.aliyun.com/repository/public' }
    
  • 保存后重新触发构建

2. 手动导入jcenter证书到Java信任库

如果必须使用jcenter,需将其SSL证书导入Unity使用的Java环境:

  1. 用浏览器访问https://jcenter.bintray.com,点击地址栏锁图标,导出DER格式的证书
  2. 找到Unity配置的Java路径(从外部工具配置截图获取),执行以下命令(默认cacerts密码为changeit):
    # Windows(需管理员权限)
    keytool -import -alias jcenter -keystore "你的Java路径/jre/lib/security/cacerts" -file "导出的证书文件路径"
    
    # Mac/Linux
    sudo keytool -import -alias jcenter -keystore "你的Java路径/jre/lib/security/cacerts" -file "导出的证书文件路径"
    

3. 排查网络代理/防火墙干扰

公司网络的代理或防火墙可能拦截SSL证书:

  • 尝试关闭系统代理后重新构建
  • 若必须使用代理,在gradle.properties中添加代理配置:
    systemProp.http.proxyHost=你的代理IP
    systemProp.http.proxyPort=代理端口
    systemProp.https.proxyHost=你的代理IP
    systemProp.https.proxyPort=代理端口
    

4. 切换回Unity内置的JDK与Gradle

自定义JDK/Gradle可能存在证书信任问题,切换到Unity内置环境:

  • 在Edit > Preferences > External Tools中,将JDK、Gradle均设置为Embedded JDK和Embedded Gradle
  • 清理之前的构建缓存(File > Build Settings > Clean Build)后重新打包

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 05:12:24