离线 Gradle 如何缓存依赖项



我正在服务器上进行夜间 gradle 构建,在那里我从 git 中签出存储库并构建它们。但是,有一个代理,gradle 无法下载任何存储库。我尝试运行 gradlew 离线模式,然后收到一个错误,告诉我

"无缓存版本",然后是依赖项的名称。

这显然是因为我从未下载过依赖项,我正在考虑手动下载依赖项以缓存它们并在构建可以访问它的服务器上使用该 gradle 缓存。我的问题如下:

  1. 有什么方法可以手动下载.jar文件或.pom文件,然后缓存它们吗?
  2. 如何在 $Home/.gradle/caches 目录中缓存 jar 文件?我试着把它放在那里,但它不起作用.

有什么想法吗?

通常,Gradle 仅在需要时按需检索依赖项。要让 Gradle 事先下载所有依赖项(从而填充本地缓存),您可以使用类似

task resolveAllDependencies {
    description "Resolves all transitive dependencies (e.g. to build offline later)."
    doLast {
        configurations.all {
            it.resolve()
        }
    }
}

运行此任务后,您应该能够使用 --offline 成功构建。

在 Android Studio 中同步依赖项一次,然后转到

  • 文件>设置>构建和执行> Gradle>启用离线模式> 好的!

最新更新