使用Maven从依赖jar中排除资源

时间:2014-12-21 17:00:05

标签: java maven jar resources log4j

我有一个我必须使用的第三方jar文件,但不幸的是它包含一个嵌入式log4j配置文件作为资源。当我将第三方jar包含为Maven依赖项时,我也会选择log4j配置,这会覆盖我自己的配置。

有没有办法告诉Maven包含jar依赖项,同时排除该jar中的特定资源?

3 个答案:

答案 0 :(得分:0)

简短回答是

但是,如果您希望使用自己的log4j配置,请使用log4j.configuration或类似名称设置名为-Dlog4j.configuration=somefile.properties的系统属性。

有关详细信息,请参阅此SO-answer

答案 1 :(得分:0)

是的,您可以使用maven shade plugin。您可以使用过滤器来排除资源。

答案 2 :(得分:-1)

使用

<dependency>
  <groupId>sample.ProjectA</groupId>
  <artifactId>Project-A</artifactId>
  <version>1.0</version>
  <scope>compile</scope>
  <exclusions>
    <exclusion>  <!-- declare the exclusion here -->
      <groupId>sample.ProjectB</groupId>
      <artifactId>Project-B</artifactId>
    </exclusion>
  </exclusions> 
</dependency>