有没有一种方法可以用Maven创建一个只包含一些而不是所有依赖工件的fat jar?
更具体地说,我想有两个阴影的执行:一个包括com.acme:*
,另一个包括所有其它。关键是要有两个jar--一个包含我所有的代码,另一个包含所有的第三方deps。后者很简单:
<artifactSet>
<excludes>
<exclude>com.acme:*</exclude>
</excludes>
</artifactSet>
但前者不是。因为排除是在包含之后处理的,并且默认情况下所有内容都包含在内,所以以下内容将不起作用:
<artifactSet>
<excludes>
<exclude>*:*</exclude>
</excludes>
<includes>
<include>com.acme:*</include>
</includes>
</artifactSet>
有没有什么Maven?(对不起,我不得不)
1条答案
按热度按时间oxf4rvwz1#
原作者可能不需要,但经过几次尝试,我设法完成了如下结果:
使用属性
<artifactSet>
和<includes>
,您只定义了应该添加到outoput jar的依赖项,如果您必须过滤工件,您可以使用<filters>
来过滤每个工件的包。希望这能帮上忙。