繁体   English   中英

在多模块项目中执行Maven发布失败

[英]Performing maven release in multimodule project failing

我有一个multimodule(module1,module2,module3)项目,该项目具有一个聚合器pom来构建所有模块。

现在反应堆的建造顺序是

                     module1
                     module2
                     module3

同样,module2依赖于module1,而module3依赖于module2,现在要解决依赖关系,我在模块3 pom中使用$ {project.version}来指定module1版本,类似地,我在模块3中使用$ {project.version} pom指向module2。现在快照作业已成功执行,但是当我尝试使用聚合器pom(这是所有模块的父pom)释放所有模块时,构建失败,因为未释放,它无法释放项目有没有办法解决这个问题?

我正在为该项目使用Maven 3.0.4 maven-release-plugin:2.0-beta-8。 同样,模块2必须使用模块1的最新版本,模块3和模块2也是正确的。并且有必要一起释放所有模块,因为我希望仅当所有模块都成功构建后才能释放模块。

parent pom

    <project>
    <groupid>com.mycompany</groupid>
    <artifactid>parent</artifactid>
    <version>1.0.0</version>
    <modules>
            <module>module1</module>
            <module>module2</module>
            <module>module3</module>
        </modules>






    ..


    </project>


    module1 pom

    <project>
    <parent>
    <groupid>com.mycompany</groupid>
    <artifactid>parent</artifactid>
    <version>1.0.0</version>
    <relativePath>../pom.xml</relativePath>
    </parent>

    <groupid>com.mycompany</groupid>
    <artifactid>module2</artifactid>




    <dependencies>
        ..
        ..

    </dependencies>


    module2 pom


    <project>
    <parent>
    <groupid>com.mycompany</groupid>
    <artifactid>parent</artifactid>
    <version>1.0.0</version>
    <relativePath>../pom.xml</relativePath>
    </parent>

    <groupid>com.mycompany</groupid>
    <artifactid>module2</artifactid>




    <dependencies>
        <dependency>
        <groupid>com.mycompany</groupid>
        <artifactid>module1</artifactid>
        <version>${project.version}</version>
        </dependency>
         ..
         ..
         ..
    </dependencies>

    ..


    </project>

检查事项

1)确保使用$ {project.version}指定了同一父项下的任何依赖项

2)确保每个模块未明确声明其自己的版本,而仅指定一个父级,而后者将设置该版本。

3)确保每个项目均未明确声明应来自父项的groupId。

4)确保没有SNAPSHOT依赖项。 SNAPSHOT应该出现在所有模块中的唯一位置是父pom。

5)确保您所有的pom都声明了包装,父母应为pom。

暂无
暂无

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

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