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
解决