如何在开发IDE,maven上提供slf4j-log4j12

时间:2016-09-05 13:12:43

标签: maven slf4j

我希望为我的客户提供一个只需要slfj-api的api。但是当dev使用ide时,将使用slf4j-log4j12记录日志。

有没有办法用maven做到这一点。

我尝试将其声明为提供范围,但它不起作用。

1 个答案:

答案 0 :(得分:0)

如果您已按照此

标记了slf4j-log4j12依赖关系
<dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-log4j12</artifactId>
  <version>1.7.25</version>
  <scope>provided</scope>
</dependency>

然后,项目中的另一个依赖项可能将slf4j-log4j12作为传递依赖项。尝试运行mvn dependency:tree命令。这将显示每个依赖项的所有传递依赖项。如果正在拉入slf4j-log4j12,您可以将其排除在外。

<!-- Dependency with slf4j-log4j12 as a transitive dependency -->
<dependency>
  <groupId>my.project</groupId>
  <artifactId>my.artifact</artifactId>
  <version>1.9.0</version>
  <exclusions>
    <exclusion>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
    </exclusion>
  </exclusions>
</dependency>