2016-01-13 121 views
1

我嘗試使用packagingExcludes與正則表達式,但它不適用於我。正則表達式maven packaging不包括

當我使MVN包,我有兩個罐包括:

  • MTM-共同-LIB-1.0.8.jar
  • MTM-共同-LIB-3.0.9-20160113.031644-18- jboss.jar

我想只拿罐子-jboss.jar推廣。

我已經試過這樣:

<groupId>org.apache.maven.plugins</groupId> 
<artifactId>maven-war-plugin</artifactId> 
......... 
......... 
<packagingExcludes> 
    ......, 
    ......, 
%regex[WEB-INF/lib/mtm-common-lib-*-(?!jboss).jar] 
</packagingExcludes> 

而且也:

%regex[WEB-INF/lib/mtm-common-lib*(?!mtm-common-lib*jboss.jar).jar] 
%regex[WEB-INF/lib/mtm-common-lib*(?!jboss).jar] 

沒有爲我工作。

任何線索?

謝謝。

回答

1
%regex[WEB-INF/lib/mtm-common-lib-(.(?!-jboss))*.jar] 

這個想法是匹配多個字符,檢查-jboss不遵循的每個字符後。

+0

我試了你的答案,但它似乎做了相反的事情,它刪除了mtm-common-lib-3.0.9-20160113.031644-18-jboss.jar並保留mtm-common-lib-1.0.8.jar。 – Kikou

+0

@Kikou,對不起,我沒有看到它在'packagingExcludes'中。更新。 – ndn

+0

thxs,但%正則表達式[WEB-INF/lib/mtm-common-lib - 。* - (?<!jboss).jar]也不起作用,因爲在<?<!jboss) 「標記中出乎意料的字符」 – Kikou