繁体   English   中英

关于Maven版本插件

[英]Regarding Maven Versions Plugin

我正在尝试使用Maven版本插件将所有子POM升级到父版本并执行父pom中所有子模块的构建.Pom文件如下所示

父POM

<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.build.pom</groupId>
    <artifactId>basepom</artifactId>
    <version>1.0</version>
    <packaging>pom</packaging>

    <modules>
        <module>
            <module>../Common</module>
        <module>
    <modules>

    <!-- . . . -->
</project>

儿童绒球

<parent>
    <artifactId>basepom</artifactId>
    <groupId>com.build.pom</groupId>
    <version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.child.common</groupId>
<artifactId>common</artifactId>
<packaging>jar</packaging>
<name>Common</name>
<description>Common Jar</description>

现在,如果我使用来自Eclipse的命令在基础POM上运行Maven构建

mvn clean install 

子模块正在正确构建,但是如果我将basepom版本更新为2.0并使用version plugin命令

mvn clean -N versions:update-child-modules install

版本正在更新,但是未构建子模块。 仅基础pom得到构建。

我是否必须明确指定在某个阶段构建子模块? 我想念什么?

您可以像这样使用set-goal来代替手动设置父级的版本:

versions:set -DnewVersion=XXX -DgenerateBackupPoms=false install

这将更新父级和所有子级的版本,然后应执行安装。


编辑:

要将参数和执行移至pom,请尝试如下操作(未经测试):

  <plugin>
   <artifactId>maven-versions-plugin</artifactId>
   <executions>
    <execution>
     <goals>
      <goal>set</goal>
     </goals>
     <configuration>
       <newVersion>XXX</newVersion>
       <generateBackupPoms>false</generateBackupPoms>
     </configuration>
    </execution>
   </executions>
 </plugin>

(如果版本未更改,则应忽略设定的目标。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM