gpt4 book ai didi

java - Dockerfile 中的打包步骤是下载依赖项,尽管前面有一个步骤来解决依赖项

转载 作者:行者123 更新时间:2023-12-02 00:40:45 24 4
gpt4 key购买 nike

我的 Dockerfile:

FROM maven:3.6.1-jdk-12
WORKDIR /app

COPY pom.xml pom.xml
RUN mvn -B dependency:resolve dependency:resolve-plugins

COPY . .
RUN mvn -B package spring-boot:repackage

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","target/my-service-1.0.1.jar"]

我想在重新打包步骤之前下载所有依赖项,这样我就不需要等待下载每个代码更改的依赖项,而只需等待 pom.xml 更改。

但是这不起作用,并且步骤 mvn -B package spring-boot:repackage 始终下载包。

我的pom.xml相当长,请告诉我那里是否有任何相关信息,我会添加它。

最佳答案

我终于成功地使用这个 Dockerfile 并添加 go-offline-maven-plugin 来分割我的依赖步骤。 .

FROM maven:3.6.1-jdk-12
WORKDIR /app

COPY pom.xml pom.xml
RUN mvn de.qaware.maven:go-offline-maven-plugin:resolve-dependencies

RUN find /root/.m2 -type f -name '_*.repositories' -delete

COPY . .
RUN mvn -o package spring-boot:repackage

ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","target/my-service-1.0.1.jar"]

关于java - Dockerfile 中的打包步骤是下载依赖项,尽管前面有一个步骤来解决依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57942534/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com