多模块Maven项目中的log4j配置文件
我正在研究一个多模块Maven项目,其结构如下:
war-modulejar-module
war模块取决于jar模块,并将打包后将jar工件添加到webapp的lib目录中。
war模块和jar模块都使用Apache
log4j进行日志记录,并共享相同的log4j配置文件(log4j.xml),该文件当前位于jar模块项目中。并且此log4j.xml将打包到jar-
module.jar文件中,但是,我想将其放入war包中而不是jar文件中的WEB-INF /
classes目录中,以便用户可以轻松找到它配置文件并在必要时对其进行修改(如果此文件位于WEB-INF / lib / jar-
module.jar中,由于该目录下还有许多其他jar,对于他们来说很难找到它)。
我的问题是:Maven解决此问题的方法是什么?
我的真实项目要复杂一些,并且还有一个耳模,它也依赖于jar模块(aka。jar模块可以在多个不同的项目中独立使用,而我不能只是将文件放入war-
module / src / main /
resources目录以解决此问题)。而且我不想在多个项目中重复一些配置文件,例如log4j.xml(以及其他配置文件,例如myapp.properties)。
回答:
我通过在网络上进行更多搜索找到了答案。
通常,在多模块Maven项目中共有三种共享资源的方法:
- 剪切并粘贴它们。
- 使用汇编和依赖插件
- 使用maven-remote-resources-plugin
这是Maven背后的公司Sonatype的博客文章,内容涉及在Maven中的项目之间共享资源,这是我需要的确切答案:
http://www.sonatype.com/people/2008/04/how-to-share-resources-across-
projects-in-maven/
以上是 多模块Maven项目中的log4j配置文件 的全部内容, 来源链接: utcz.com/qa/414015.html