【发布时间】:2014-03-21 16:02:15
【问题描述】:
当我有一个由多个模块组成的 maven 应用程序并且每个模块都包含一个 log4j.properties 文件时,会发生什么情况,它们是否会被某个模块合并或覆盖(如果是,是哪个模块)?
更新:根据您的建议,我现在在我的 poms 中排除了类似这样的附加属性:
<dependency>
[...]
<excludes><exclude>**/log4j.properties</exclude></excludes>
</dependency>
P.S.:但是,Maven 无法识别“excludes”标签,并且“exclusions”仅适用于依赖项,而不适用于资源。
更新
刚刚在log4j in a multi-module Maven project 中发现,我可以将 log4j.properties 放在 src/test/resources 中,这样它们就不会包含在可执行模块中!。
【问题讨论】:
-
要排除资源,您应该使用 Maven 资源插件 (maven.apache.org/plugins/maven-resources-plugin/examples/…)。标签层次结构是 build/resources/excludes/exclude
-
但是我怎样才能将它从某个依赖项中排除,但又不让另一个依赖项呢?