在将我的项目从Ubuntu转移到Mac时,我将~/.gradle/cache依赖项和jars从Ubuntu上的~/.gradle/caches/artifacts复制到Mac上的~/.gradle/caches/artifacts,以避免gradle再次下载依赖项。令我惊讶的是,运行gradle idea (我们正在使用Intellij )清空了的~/.gradle/caches/artifacts文件夹,并开始再次下载依赖项。
我在SOF上看到了许多关于迫使gradle重新下载依赖项的资源和问题(例如,使用--刷新-依赖项标志),但是到目前为止还没有关于如何使用阻止gradle这样做,而是查看它的本地缓存。
是否有可以帮助完成此任务的标志或开关?
我正在使用gradle 1.0-里程碑-3,不幸的是,没有特权在短期内升级它。
发布于 2020-04-08 11:21:26
-离线旗帜迫使Gradle不能访问网络资源。因此,它将使用Gradle依赖项缓存,而不尝试刷新来自远程服务器的依赖项。见如何将gradle配置为“脱机”(使用缓存的依赖项)。
当然,正如兰斯-爪哇在他的回答中提到的,可重定位依赖缓存是一个v6.1+特性(参见使依赖项缓存relocateable#1338),因此不适用于使用早期Gradle版本生成的缓存。
发布于 2020-04-08 07:13:42
这在第6.1级之前不受支持,您使用的是6.1.1级还是更高版本?
Gradle的早期版本在每个项的缓存键中包含了绝对文件路径,这使得从一台计算机复制构建缓存并在另一台机器上使用它变得困难。
请参阅有关可重定位构建缓存的6.1.1发行说明。
https://stackoverflow.com/questions/61094638
复制相似问题