2012-02-06 574 views
6

我有一个2模块pom,理想情况下我希望每个子模块都有自己的logback.xml文件。但是,logback抱怨在类路径中找到多个logback.xml文件。虽然看起来好像这不是问题,并且正确的xml被提取出来了,但我想知道最佳解决方案是什么。多模块pom每个模块具有不同的logback.xml

在此先感谢!

回答

9

如果你的模块是一个jar,被另一个模块作为一个依赖项包含在内,你不应该有一个logback.xml - 这取决于jar的用户来决定他们的日志配置。您也不应该将logback列为依赖项,因为用户应该选择日志记录实现。

我假设你的两个模块中的一个取决于另一个。所以依赖模块应该有logback.xml,而另一个则不应该。

在对每个模块进行单元测试时,可以将logback-test.xml放入src/test/resources中,并将logback添加为测试作用域的依赖项。这样,它将不会被列为模块的依赖项,并且不会导出logback xml文件。

+0

谢谢,实际解释。你是正确的一个模块依赖于另一个模块(jar模块),并且从jar模块中删除logback.xml也是非常合理的。 – gpol 2012-02-07 15:27:22