将gradle缓存复制到脱机系统时出现问题

时间:2017-08-07 05:18:04

标签: gradle gradlew

我有一台笔记本电脑,我使用包装器gradlew运行Gradle项目。此项目的依赖项只能从我们组织的网络下载。 我的测试团队想要在组织网络之外测试项目,因此我无法下载依赖项。所以我将整个“.gradle”文件夹从我的机器的C:\\Users\\MyUserName复制到另一个系统的C:\\Users\\Admin。我跑了,gradlew --offline。但是我收到一条错误,指出尚未找到缓存,尽管JARS存在于“.gradle”目录中。有什么我想念的吗?

1 个答案:

答案 0 :(得分:2)

不应将gradle缓存文件夹复制到不同的目录,因为存储在其中的某些路径由绝对路径引用。您至少需要使用gradle用户主页C:// Users / Admin运行您的构建,以便稍后使用--offline

使其在离线系统上运行

我将使用专用文件夹(如C:/gradle-cache)并将GRADLE_USER_HOME设置为指向该目录,或使用gradle中的-g选项指定gradle缓存文件夹。

目前Gradle中存在一个错误,阻止Wrapper尊重-g选项(https://github.com/gradle/gradle/issues/1895)。因此,当您似乎使用包装器时,您可能应该使用GRADLE_USER_HOME环境变量。

然后在您的目标系统上,您将缓存再次复制到C:/gradle-cache并设置GRADLE_USER_HOME,您的离线版本应该可以正常运行。