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

Unity安卓项目搭建时Gradle依赖拉取失败求助

解决Unity安卓项目Gradle拉取依赖时的ZipException错误

我之前在搭建Unity安卓项目时也碰到过完全一样的问题,这个错误的核心原因很明确:本地Gradle缓存的依赖包损坏了——大概率是下载过程中网络中断、磁盘写入异常,导致zip包不完整,解压时找不到必需的END header。下面是我亲测有效的几个解决步骤,按顺序尝试基本就能搞定:

  • 清理Gradle本地缓存(最常用的解决方法)
    找到你的Gradle缓存目录,不同系统路径不同:

    • Windows:C:\Users\<你的用户名>\.gradle\caches
    • macOS/Linux:~/.gradle/caches
      直接删除整个caches文件夹,然后回到Unity,点击Build或者Refresh Linked Libraries,让Gradle重新完整下载所有依赖包。
  • 调整Unity的Gradle相关设置
    打开Unity的Edit > Project Settings > Player > Android > Publishing Settings,做这几个检查:

    • 尝试切换Gradle版本:如果之前勾选了Use Gradle Wrapper,可以暂时取消,改用Use Internal Gradle(Unity自带的Gradle版本适配性更好);反之也可以试试切换到Wrapper版本。
    • 检查自定义Gradle模板:如果之前手动修改过Custom Gradle Template里的内容,可能引入了错误,建议先取消勾选,用默认模板重新构建试试。
  • 确保网络稳定并配置合适的镜像源
    依赖包下载不完整很多时候是网络问题导致的。如果是国内环境,建议在Gradle配置里添加国内的Maven镜像,这样下载速度和稳定性都会提升。你可以在Unity生成的build.gradle文件中,在repositories节点下添加:

    maven { url 'https://maven.aliyun.com/repository/public' }
    
  • 手动替换损坏的特定依赖包
    如果错误日志后续能定位到具体损坏的依赖包名,你可以直接去Maven仓库手动下载对应的jar/aar包,放到Unity项目的Assets/Plugins/Android目录下,让Unity直接使用本地依赖,跳过Gradle的远程拉取步骤。

附上你提供的错误日志:

Gradle failed to fetch dependencies. stderr: Exception in thread "main" java.util.zip.ZipException: zip END header not found at java.base/java.util.zip.ZipFile$Source.zerror(ZipFile.java:1252) at java.base/java.util.zip.ZipFile$Source.findEND(ZipFile.java:1153) at java.base/java.util.zip.ZipFile$Source.initCEN(ZipFile.j...

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 08:02:08