我有一个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
文件夹中,存在模块依赖关系和第三方依赖关系的混合体。)
除了那些模块,我有什么办法可以缓存所有其他依赖项(第三方)? 还是不可能,因为最终它们都是依赖项?