如何追踪Maven中的神秘依赖?

时间:2013-06-25 01:02:29

标签: maven dependency-management

我有一个WAR项目,不知何故,我总是在我的构建包中得到log4j-1.2.16.jar。我正在使用 SLF4J ,因此我将Log4J排除在任何可传递它的依赖项之外。

Log4J未显示在mvn dependency:tree中,但确实显示在mvn dependency:resolve中。

它没有出现在NetBeans的POM图形查看器中(但我猜它正在做类似于dependency:tree的事情。

我还有什么地方可以找出为什么log4j-1.2.16.jar总是最终包含在我的WAR中?

3 个答案:

答案 0 :(得分:1)

尝试:

mvn dependency:tree -Dincludes=log4j -Dverbose

查看log4j以外的任何工件是否会传递slf4j

答案 1 :(得分:0)

尝试生成dependency report并搜索任何log4j依赖项。

如果不使用log4j,你是否指定了logback或其他东西作为slf4j实现?

答案 2 :(得分:0)

依赖目标和报告没有显示任何内容,只是从mvn -X package读取调试输出确实指出了log4j中传递的依赖性。神秘解决了。