在发布多模块 Maven 项目时,未对所有项目执行构建

问题描述

我在发布多模块 Maven 项目期间遇到了构建问题。我有这个结构:

parent
|-- potato
|-- lettuce
|-- raddish

我想发布土豆和生菜项目。 (他们不依赖快照萝卜。)

我使用的命令是:

mvn release:prepare -pl potato,lettuce ... (tag,versions and so on) -DpushChanges=false

历史上的每一次提交都如我所料——一次提交将马铃薯和生菜的版本从 X-SNAPSHOT 更改为 X,一次将 X 更改为 Y-SNAPSHOT。为两个项目创建了一个标签

但是,在发布期间有两个构建阶段:准备——一个在 X 版本上调用 verify,另一个在 Y-SNAPSHOT 版本上调用 verify。两个阶段都只构建了第一个项目,而不是第二个项目。 (首先在 -pl 参数中指定。)调用 release:perform 时也会发生同样的情况。仅部署第一个项目,其他所有项目均被忽略。

准备阶段生成的release.properties文件类似于这个(注意exec.pomFileName=potato/pom.xml):

project.scm.release.test\:potato.developerConnection=scm\:git\:http\://localhost\:3000/petr/release-test.git
project.scm.release.test\:lettuce.connection=scm\:git\:http\://localhost\:3000/petr/release-test.git
scm.commentPrefix=[maven-release-plugin]
project.scm.release.test\:potato.connection=scm\:git\:http\://localhost\:3000/petr/release-test.git
exec.pomFileName=potato/pom.xml
pushChanges=false
releaseStrategyId=default
project.scm.release.test\:lettuce.developerConnection=scm\:git\:http\://localhost\:3000/petr/release-test.git
scm.tag=33
project.scm.release.test\:lettuce.tag=HEAD
remoteTagging=true
scm.branchCommitComment=@{prefix} prepare branch @{releaseLabel}
projectVersionPolicyId=default
scm.url=scm\:git\:http\://localhost\:3000/petr/release-test.git
scm.tagNameFormat=@{project.artifactId}-@{project.version}
project.scm.release.test\:lettuce.url=http\://localhost\:3000/petr/release-test.git
pinExternals=false
project.scm.release.test\:potato.tag=HEAD
preparationGoals=clean verify
scm.releaseCommitComment=@{prefix} prepare release @{releaseLabel}
exec.snapshotReleasePluginAllowed=false
exec.additionalArguments=-pl=lettuce,potato
project.rel.release.test\:potato=33
project.rel.release.test\:lettuce=33
project.scm.release.test\:potato.url=http\://localhost\:3000/petr/release-test.git
scm.developmentCommitComment=@{prefix} prepare for next development iteration
scm.rollbackCommitComment=@{prefix} rollback the release of @{releaseLabel}
completedPhase=end-release

有没有办法只使用一个标签发布两个项目并提交,但同时构建土豆和生菜(但不是萝卜)?

我使用的是 Release 插件 3.0.0-M1。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...