此处说的引用,是打包完成后放到maven仓储中,而不是在编译工具中直接关联,后者使用的不是打包后的jar
在maven多项目/模块中会存在项目/模块间相互引用,此时会涉及到配置文件的加载,如果想过滤被引用项目中的配置文件,且被引用项目的单元测试能够正常独立使用,可以通过如下配置在打包过程中进行过滤。
相同名称的文件名,【被引用项目】中的不会被加载。可参考spring boot 配置文件加载优先级。
<build>
<plugins>
<!-- 打jar包的时候排除掉所有资源文件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<!-- excludes\includes 是根据编译后的classes这个路径计算的 -->
<excludes>
//<exclude>/**.properties</exclude>
// <exclude>/**.yml</exclude> -->
<!-- 排除掉所有资源文件 -->
<exclude>/**.*</exclude>
</excludes>
</configuration>
</plugin>
</plugins>
</build>
本文介绍如何在Maven多项目/模块中通过特定配置,在打包过程中排除指定的资源文件,如配置文件,同时确保被引用项目的单元测试能正常运行。此方法适用于希望过滤掉特定配置文件的情况。
1171





