Maven-jar-plugin中的清单类路径过滤器

时间:2019-04-05 14:14:30

标签: java maven maven-jar-plugin

我可以从<addClasspath>true</addClasspath>选项生成的类路径中排除一些工件吗?

例如,我有一些依赖项:

<dependency>
  <groupId>com.group1</groupId>
  <artifactId>lib11</artifactId>
  <version>1.0</version>
</dependency>

<dependency>
  <groupId>com.group1</groupId>
  <artifactId>lib12</artifactId>
  <version>1.0</version>
</dependency>

<dependency>
  <groupId>com.group2</groupId>
  <artifactId>lib21</artifactId>
  <version>1.0</version>
</dependency>

现在,我在 MANIFEST.MF 中的类路径条目是:

Class-Path: lib/lib11.jar lib/lib12.jar lib/lib21.jar

我要排除依赖项列表中的某些groupId并采用以下形式输入:

Class-Path: lib/lib21.jar

我该怎么做?

1 个答案:

答案 0 :(得分:0)

将带有值scope的标签provided添加到不必要的依赖项时,它们会根据需要从类路径中消失。 对于这个问题的示例:

<dependency>
  <groupId>com.group1</groupId>
  <artifactId>lib11</artifactId>
  <version>1.0</version>
  <scope>provided</scope>
</dependency>

<dependency>
  <groupId>com.group1</groupId>
  <artifactId>lib12</artifactId>
  <version>1.0</version>
  <scope>provided</scope>
</dependency>