maven:父版本

时间:2012-12-05 11:56:48

标签: maven

我不明白什么是父版本以及什么应该是好的?

我们在团队中使用svn,当我最后一次更新项目时,我发现父版本已更改:

本地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>

父版本何时更改以及它应该更好?

2 个答案:

答案 0 :(得分:0)

父POM包含适用于所有子模块的设置。这可能包括声明插件设置或选择依赖版本。

父POM与任何其他Maven工件没有什么不同。它可以改变,什么时候版本号必须增加。通常,您希望始终使用父级的最新可用版本。

您可以使用Maven versions plugin来帮助管理版本,包括强制更新最新的可用父版本。

答案 1 :(得分:0)

如果你有一个多模块项目,父母pom和孩子pom就会出现。例如,如下所示

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

可能有几个这样的层次结构。有两种方法可以定义此继承

  1. 在父pom中添加一个xml块,告诉它哪些是依赖模块。 OR
  2. 在模块中添加一个xml块,告诉它是谁的父级。 (这是你的情况)
  3. 这意味着,子pom依赖于父级,并将尝试使用0.45-SNAPSHOT版本查找相关工件。此版本已更改,可能是由于更新版本的父版已取代版本。