2012-12-05 85 views
1

我不明白什麼是父版本,它應該是什麼好?maven:parent-version

我們在團隊SVN使用,當我做了更新項目的最後一次我notcied父版本發生變化:

本地的pom.xml

<parent> 
     <artifactId>foo</artifactId> 
     <groupId>bar</groupId> 
     <version>0.42-SNAPSHOT</version> 
</parent> 

SVN的pom.xml

<parent> 
     <artifactId>foo</artifactId> 
     <groupId>bar</groupId> 
     <version>0.45-SNAPSHOT</version> 
</parent> 

父母版本什麼時候變化,它應該是什麼樣的好?

回答

0

父POM包含適用於所有子模塊的設置。這可能包括聲明插件設置或選擇依賴版本。

父POM與任何其他Maven工件沒有區別。它可以改變,當它的版本號必須增加。通常,您希望始終使用您家長的最新版本。

您可以使用Maven versions plugin來幫助管理版本,包括強制更新最新的可用父版本。

0

如果您有多模塊項目,則父pom和子pom會進入畫面。例如像下面那樣

/myapp 
|- pom.xml  --> parent pom 
|+ module1/  
    | - pom.xml --> child pom 
    | - src/ 
|- module2/ 

可以有幾個這樣的層次結構。有兩種方法來定義這種繼承

  1. 在父pom中添加一個xml塊,以告訴它哪些是依賴模塊。 OR
  2. 在模塊中添加一個xml塊,以告知它是誰的父項。 (這是你的情況)

這意味着,孩子pom是依賴於父母,並會嘗試找到與0.45-SNAPSHOT版本有關的神器。這個版本已經發生了變化,可能是由於父代的更新版本已經取代版本。