0

我的项目中有 3poms个,1 个用于父级,2 个用于每个modules正在使用的项目。

当前每个 pom 都包含<version>2.1.9.0-SNAPSHOT</version>标签

每个模块是否可以自动从父模块中提取此信息?

4

2 回答 2

1

使用这里描述的versions-maven插件: https ://stackoverflow.com/a/5726599/320180

于 2012-04-23T19:02:50.450 回答
1

在多模块构建中,只有父级应该定义工件的版本,除了父级。

  +-- root (pom.xml)
        +-- mod-1 (pom.xml)
        +-- mod-2 (pom.xml)

所以根 pom.xml 看起来像(摘录):

   <project...>
    <groupId>project.com.root</groupId>
    <artifactId>project-parent</artifactId>
    <version>1.0-SNAPSHOT</version>
    ...

每个模块(mod-1)pom.xml 看起来像(摘录):

   <project...>
     <parent>
       <groupId>project.com.root</groupId>
       <artifactId>project-parent</artifactId>
       <version>1.0-SNAPSHOT</version>
     </parent>

     <artifactId>mod-1</artifactId>

特别是不应该在孩子中提及该版本。版本号的更改完全应该在发布周期内通过maven-release-plugin完成。有时,您可能会在具有大量模块的大型项目中更改子项中的 groupId。

于 2012-04-24T05:15:07.527 回答