簡體   English   中英

mvn版本:設置子模塊與其父模塊匹配時不會更改的版本,這與聚合器pom不同

[英]mvn versions:set not changing the child modules version when they would match their parent, which is not the same as the aggregator pom

我面臨着使用versions:set更改聚合maven項目及其兩個模塊的versions:set 其中一種用例無法正常工作,我不知道我是否缺少某些東西,或者該用例特別不受插件的支持。 子模塊版本未更新為1.4.0,因為它們將與someother-parentartifact-1someother-parentartifact-2的版本匹配。 我無法使用不同於1.4.0的版本重現該問題,因此我猜想插件會以某種方式引起混淆。

聚合器:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.mygroupId</groupId>
    <artifactId>my-aggregator</artifactId>
    <version>1.4.0-RC1</version>
    <packaging>pom</packaging>

    <properties>
        <maven.deploy.skip>true</maven.deploy.skip>
    </properties>

    <modules>
        <module>module-1</module>
        <module>module-2</module>
    </modules>

</project>

模塊1:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.mygroupId</groupId>
    <artifactId>module-1</artifactId>
    <version>1.4.0-RC1</version>
    <packaging>jar</packaging>

    <parent>
        <groupId>com.myanothergroupId</groupId>
        <artifactId>someother-parentartifact-1</artifactId>
        <version>1.4.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <dependencies>
        <dependency>
            <groupId>com.myanothergroupId</groupId>
            <artifactId>some-lib</artifactId>
        </dependency>
    </dependencies>

</project>

單元2:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.mygroupId</groupId>
    <artifactId>module-2</artifactId>
    <version>1.4.0-RC1</version>
    <packaging>jar</packaging>

    <parent>
        <groupId>com.myanothergroupId</groupId>
        <artifactId>someother-parentartifact-2</artifactId>
        <version>1.4.0</version>
        <relativePath/><!-- lookup parent from repository -->
    </parent>

    <dependencies>

         (bunch of dependencies)

    </dependencies>

</project>

一些見解:

  • 這兩個模塊的父項目都不是聚合器。 這是有意的,除非沒有其他選擇,否則不要更改。
  • maven.deploy.skip的值不會更改結果。
  • 我僅在要設置的版本( 1.4.0 )與子模塊的父模塊的版本匹配時才看到此信息。
  • 使用的命令是: mvn versions:set -DgenerateBackupPoms=false -DnewVersion=1.4.0 -DprocessAllModules
  • 還嘗試使用update-child-modules 沒有成功

一些日志:

[INFO]
[INFO] ----------< com.mygroupId:my-aggregator >----------
[INFO] Building my-aggregator 1.4.0-RC1                                      [1/3]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- versions-maven-plugin:2.7:set (default-cli) @ my-aggregator ---
[INFO] Searching for local aggregator root...
[INFO] Local aggregation root: C:\somedirectory\my-aggregator
[INFO] Processing change of com.mygroupId:my-aggregator:1.4.0-RC1 -> 1.4.0
[INFO] Processing com.mygroupId:module-1
[INFO]     Updating project com.mygroupId:module-1
[INFO]         from version 1.4.0-RC1 to 1.4.0
[INFO]     Updating project com.mygroupId:module-1
[INFO]         from version 1.4.0 to 1.4.0-RC1
[INFO]
[INFO] Processing com.mygroupId:module-2
[INFO]     Updating project com.mygroupId:module-2
[INFO]         from version 1.4.0-RC1 to 1.4.0
[INFO]     Updating project com.mygroupId:module-2
[INFO]         from version 1.4.0 to 1.4.0-RC1
[INFO]
[INFO] Processing com.mygroupId:my-aggregator
[INFO]     Updating project com.mygroupId:my-aggregator
[INFO]         from version 1.4.0-RC1 to 1.4.0
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for my-aggregator 1.4.0-RC1:
[INFO]
[INFO] module-1 .................................... SKIPPED
[INFO] module-2 .................................. SKIPPED
[INFO] my-aggregator ......................................... SUCCESS [  3.445 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  23.637 s
[INFO] Finished at: 2019-07-04T17:02:37+02:00
[INFO] ------------------------------------------------------------------------

在此先感謝您的幫助。

我已經使用mvn versions:set -DgenerateBackupPoms=false -DnewVersion=1.4.0 -DoldVersion=* -DgroupId=* -DartifactId=*進行了這項工作mvn versions:set -DgenerateBackupPoms=false -DnewVersion=1.4.0 -DoldVersion=* -DgroupId=* -DartifactId=*

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM