Maven 3.2.2包装不包括



我想使用pom.xml的packagingExcludes元素排除多个regex表达式。根据Maven文档,该元素包含"以逗号分隔的Ant文件集模式列表"。

然而,据我所知,每一个都被评估为对其他人的"OR"。如果我想这样做的话:

<packagingExcludes>
    %regex[WEB-INF/lib(?!abc).jar],
    %regex[WEB-INF/lib(?!xyz).jar]
</packagingExcludes>

不包含任何内容。abc.jar因为不是xyz.jar而被排除,xyz.jar因为不是abc.jar而被排除。

有没有一种方法可以让Maven使用"与"关系来评估这些?

谢谢。

如果我理解正确,您希望从WEB-INF/lib/*.jar中排除除abc.jarxyz.jar之外的所有文件。

您可以通过提供与这些排除项匹配的单个正则表达式来解决此问题。WEB-INF/lib/中的所有内容,除了那些包含(abc|xyz).jar然后结束的内容,以及在.jar中结束的内容。

%regex[WEB-INF/lib/(?!(abc|xyz).jar$).*.jar]

为了便于维护,您可能希望考虑列出排除项。

相关内容

  • 没有找到相关文章

最新更新