我有一个 build.gradle 开始是这样的:
build.gradle
plugins { id "com.github.johnrengelman.shadow" version "1.2.3" } apply plugin: 'java' apply plugin: 'scala' apply plugin: 'application'
当我在Docker(在CI中)中运行它时,它花了大约一分钟下载jar(例如scala编译器jar)。每次我在Docker中更改源代码并重新生成时,文件都会再次下载。为了加快速度,我复制了上面的片段并添加了
task download() {}
打电话 gradle download (在Dockerfile层)获取一些jar,但不是scala编译器jar。我怎么才能拿到这些?
gradle download
你可能需要在 ~/.gradle/caches . 如果您从主机系统装载此目录,它将使您能够重用分级缓存。
~/.gradle/caches
不幸的是,任务会惰性地触发工件的下载。如果您调用 getResolvedConfiguration() 方法的依赖项配置。
getResolvedConfiguration()
替换 compile 使用所需的配置名称,此调用将下载所有依赖项:
compile
task downloadCompileJars() { doLast { configurations.getByName('compile').resolvedConfiguration } }