mvn docker 部署 每次都需要下载包的问题

项目大版本更新依赖很稳定,小版本基本不引入其他依赖

docker打包时image时,一次mvn package后 把m2文件拷贝解压,之后build时直接拷入,省得还得下载

FROM maven:3.5.0-jdk-8-alpine
#拷贝项目源码 本地oracle jdk docker 内是openjdk 需要在docker内用源码重新编译
COPY . /usr/src/app
WORKDIR /usr/src/app
#m2依赖文件拷贝 add自动解压
ADD m2.tar /
#坑就在这里了 -nsu
RUN mvn package -Dmaven.test.skip=true
ENTRYPOINT ["mvn","exec:java"]
#删除临时文件
RUN rm -rf src && rm -rf m2.tar && rm -rf .idea

第一次执行package 把m2拷出后打包传入

一切正常

但过了一天后

package时

Downloading: https://maven.java.net/content/repositories/snapshots/org/glassfish/jersey/containers/jersey-container-netty-http/3.0-SNAPSHOT/maven-metadata.xml
Downloaded: https://maven.java.net/content/repositories/snapshots/org/glassfish/jersey/containers/jersey-container-netty-http/3.0-SNAPSHOT/maven-metadata.xml (1.2 kB at 379 B/s)

又会重新下载依赖

就奇了怪了,没找到问题,重来一遍正常,过了第二天,问题又出现

有线索了,时间

mvn和时间有关系的是  SNAPSHOT

太大意了

更改为非SNAPSHOT引用 或改为

RUN mvn package -nsu -Dmaven.test.skip=true

解决

原文地址:https://www.cnblogs.com/zihunqingxin/p/6866669.html