2012-05-24 53 views
0

我有喜歡的項目如何跳過行家子模塊構建

module1 
module2 
module3 
submodule1 
    src 
     main 
     java 
     resources 
    child1 
    child2 
module4 

當我運行MVN清潔項目的所有頂和子模塊構建安裝。但我希望maven不要執行child1,child2。我如何做到這一點。我發現使用配置文件我可以做到這一點。但是如何?我可以在submodule1 pom中做些什麼,以便child1,child2從Maven階段中排除?

回答

1

是的,這很容易。在submodule1的POM,默認情況下只包含源:

<modules> 
    <module>src</module> 
</modules> 

然後在一個特殊的配置文件,默認情況下禁用,你建立個個

<profiles> 
    <profile> 
     <id>src-extra</id> 
     <modules> 
      <module>src</module> 
      <module>child1</module> 
      <module>child1</module> 
     </modules> 
    </profile> 
</profiles> 

不過,你也應該調查--also-make--also-make-depends選項,這可能允許您在沒有任何POM更改或額外配置文件的情況下執行所需操作。

+1

基本上我想通過pom的變化來做到這一點。不通過命令行。因爲我的項目建立在其他項目也建立的服務器上。有一個常用的乾淨安裝命令用於所有項目。 –

+0

src也不是一個模塊。源是模塊的源文件夾。 –

+0

不建議將聚合器模塊(具有''節的模塊)和產生工件的模塊混合使用。我建議你將'child1'和'child2'移動到'sub-module1'的同級目錄中,並依賴它們。 – artbristol