Gradle离线如何caching依赖关系

我正在做一个晚上gradle在服务器上build立一个服务器,从git检查仓库并构build它们。但是,有一个代理,gradle无法下载任何仓库。 我尝试运行gradlew离线模式,然后我得到一个错误告诉我

“没有caching版本”,然后是依赖项的名称。

这显然是因为我从来没有下载依赖关系,我正在考虑手动下载依赖caching它们,并在构build可以访问它的服务器上使用这个gradlecaching。 我的问题如下:

  1. 有什么办法可以手动下载.jar文件或.pom文件,然后caching它们?
  2. 我如何将一个jar文件caching在$ Home / .gradle / caches目录中? 我试着把它放在那里,但它不工作。

有任何想法吗?

通常情况下,Gradle只会在需要时检索依赖关系。 为了使Gradle事先下载所有的依赖关系(从而填充本地缓存),可以使用类似的任务

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

运行这个任务之后,你应该能够用--offline成功的生成。