2012-11-09 100 views
2

可能重複:
How do I exclude certain modules from a maven build using the commandline如何從mvn clean install中排除項目?

我運行在一個POM文件,其包括數個模塊(和子模塊)一個maven clean install。我想知道是否有可能運行一個maven構建,但在命令行中指定從構建中跳過一個模塊(目前我手動從構建中排除它們,但編號喜歡通過命令行來完成)。

我知道用-pl你可以有選擇地選擇項目,但我想要的是有選擇地排除(以黑名單的方式)。

+1

這是前些日子才問的。總之,沒有辦法從命令行執行此操作。 http://stackoverflow.com/q/13266470/73446 – gregwhitaker

+0

不知何故,我錯過了我的搜索 – Thomas

回答

5

您可以在配置文件中有單獨的<modules>部分,然後在命令行中激活所需的配置文件。

例子:

<profiles> 
    <profile> 
     <id>profile-1</id> 
     <activation> 
     <activeByDefault>true</activeByDefault> 
     </activation> 
     <modules>...</modules> <!-- module set 1 --> 
    </profile> 
    <profile> 
     <id>profile-2</id> 
     <modules>...</modules> <!-- module set 2 --> 
    </profile> 
</profiles> 

現在,依賴於你的當前需要,執行

mvn install 
mvn install -P profile-2 

請注意,你必須仔細考慮一下,絕不能有交叉配置文件相關的被排除的模塊。

+0

感謝您的建議,但我真的在尋找一個命令行解決方案,我不需要Crete配置文件或觸摸pom 。顯然現在還沒有一個: – Thomas

+1

排除項目對於Maven來說並不是一件小事,所以我會冒險猜測它永遠不會像命令行選項那麼簡單。 – MaDa

相關問題