【发布时间】:2019-08-27 11:23:10
【问题描述】:
我可以从 <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
我想排除我的依赖项列表中的一些 groupIds 并以这种形式输入:
Class-Path: lib/lib21.jar
我该怎么做?
【问题讨论】:
-
顺便说一句:你用
Class-Path做什么? -
@JFMeier 我使用类路径在我的可运行 jar 中指定所有使用的库和其他应用程序模块。生产阶段的一些模块位于另一个目录而不是 lib。我禁用了将此依赖项复制到 lib 目录并在类路径中手动指定它们。我想从 lib\lib11.jar 之类的类路径条目中删除,因为已经使用正确的路径手动定义它,例如没有前缀的 lib11.jar。
-
有趣...我认为现在人们使用胖罐子。或者应用服务器中的战争/耳朵。
-
@JFMeier 这不是一个胖罐子。所有依赖项都位于 jar 之外。它是一个桌面 javafx 应用程序。
标签: java maven maven-jar-plugin