`gradle` 的 `npm install` 相当于什么?

Arc*_*ano 8 gradle docker

npm installGradle是否有等价物?

我想缓存我的 Gradle 构建的层。通常,如果它是一个 npm 项目,我会这样做

FROM node
COPY package.json package-lock.json .
RUN npm install # at this point the dependencies are downloaded
COPY src/ src/
RUN npm run build
Run Code Online (Sandbox Code Playgroud)

所以我试图用同样的方式来做,但使用 Gradle

FROM gradle:jdk12 AS build
COPY *.gradle .
RUN ????
COPY src/ src/
RUN gradle build
Run Code Online (Sandbox Code Playgroud)

mic*_*alk 5

因此,正如我所看到的,您对缓存 docker 映像中的 gradle 依赖项很感兴趣。您可以使用gradle dependencies来列出依赖项,并且会下载副作用依赖项(您必须将build.gradle文件复制到图像中):

RUN gradle dependencies
Run Code Online (Sandbox Code Playgroud)

或使用 gradle 包装器:

RUN ./gradlew dependencies
Run Code Online (Sandbox Code Playgroud)

还可以强制刷新依赖项,您可以使用--refresh-dependencies

RUN gradle dependencies --refresh-dependencies
Run Code Online (Sandbox Code Playgroud)