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

如何迁移Gradle缓存至无网机器,实现多插件项目离线构建

将Gradle缓存迁移至无网机器实现离线构建

步骤1:在联网机器上完成全量依赖拉取与构建

先在有网机器上执行完整构建,确保所有项目依赖、Gradle插件及Gradle Wrapper分发包都已下载到本地缓存:

  • 执行构建命令拉取所有依赖:./gradlew build(Windows环境用gradlew.bat build)
  • 可选:执行./gradlew dependencies确认所有依赖已完成下载
  • 执行./gradlew --version,确保Gradle Wrapper对应的版本包已缓存到本地

步骤2:打包Gradle核心缓存目录

Gradle的关键缓存分为两个目录,需完整打包:

  • 依赖与插件缓存:
    • Linux/macOS:~/.gradle/caches
    • Windows:%USERPROFILE%\.gradle\caches
  • Gradle版本分发包缓存:
    • Linux/macOS:~/.gradle/wrapper
    • Windows:%USERPROFILE%\.gradle\wrapper

将这两个目录打包为ZIP或tar.gz格式,方便跨机器传输。

步骤3:迁移文件至无网机器

向无网机器传输以下内容:

  • 项目完整源码目录
  • 步骤2中打包的Gradle缓存压缩包
  • 若项目依赖本地构建的JAR或自定义本地仓库(如Maven本地仓库~/.m2/repository),需一并传输对应文件

步骤4:在无网机器上恢复缓存

将压缩包解压到无网机器的对应Gradle目录:

  • Linux/macOS:解压到~/.gradle/,覆盖原有caches和wrapper目录
  • Windows:解压到%USERPROFILE%\.gradle\,覆盖对应目录

确保解压后的文件权限正常,当前用户拥有读写权限。

步骤5:执行离线构建

在无网机器上使用离线模式执行构建,避免Gradle尝试联网:

  • 临时离线构建:./gradlew build --offline
  • 永久离线配置(可选):在项目根目录的gradle.properties中添加org.gradle.offline=true,后续构建无需重复加--offline参数

注意事项

  • Gradle版本一致性:联网与无网机器使用的Gradle版本必须完全一致(以Wrapper指定版本为准),否则Wrapper会触发联网下载请求
  • 插件完整性:若项目使用自定义插件或本地发布的插件,需确保这些插件文件已包含在迁移的缓存或项目文件中
  • 缓存更新:若后续项目依赖或插件版本有变更,需重新在联网机器上拉取新缓存后再迁移

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 05:53:19