Docker-具有多模块Maven项目的多阶段构建

时间:2019-12-26 02:08:06

标签: java maven docker maven-dependency-plugin

我有一个Maven项目,该项目具有一个pom.xml根文件,该文件具有多个子文件夹作为模块和依赖项。

它看起来像这样:

    <packaging>pom</packaging>
    <modules>
        <module>module1</module>
        <module>module2</module>
    ...
    ...

每个模块/依赖项都生成自己的JAR文件。

我正在使用Maven依赖插件将我的最终JAR解压缩到类和依赖文件夹中。

所以我的Dockerfile里面是这样的:

COPY ${FOLDER}/BOOT-INF/lib /app/lib
COPY ${FOLDER}/META-INF /app/META-INF
COPY ${FOLDER}/BOOT-INF/classes /app

依赖项位于/app/lib中,但是由于我的子文件夹(模块)是其中的一些依赖项,因此COPY层永远不会被缓存,因为这些子文件夹是我更改代码的地方。 (在该/app/lib文件夹中,存在模块依赖关系和第三方依赖关系的混合体。)

除了那些模块,我有什么办法可以缓存所有其他依赖项(第三方)? 还是不可能,因为最终它们都是依赖项?

0 个答案:

没有答案