默认情况下,准备发布会经历以下发布阶段:
要准备发布,请执行以下命令:
mvn release:prepare
注意:如果发生错误,或者进程被取消,那么再次运行此命令将从最后一个停止的地方开始。
如果您想重新开始,请使用:
mvn release:prepare -Dresume=false
或者,您可以使用:
mvn release:clean release:prepare
注意:如果对源文件进行了任何更改,则可能需要在重新启动准备过程之前将其还原。您可以使用release:rollback让插件为您执行此操作。
系统将提示您输入项目每个模块的版本号。如果您希望每个模块都获得与父 POM 相同的版本,则可以将选项autoVersionSubmodules设置为true。现在将只询问一次发布版本和下一个开发版本。
可以为每个项目生成一个release-pom.xml文件,其中包含在发布时使用的完全解析的项目作为以后的记录。从 2.0 版本开始,这需要调用一个替代目标:
mvn release:prepare-with-pom
此目标等效于release:prepare目标,只是它需要项目的先前版本才能正确填充release-pom.xml文件。
默认情况下,如果您不指定标签名称,则会建议使用artifactId -版本的默认标签名称(如果以非交互方式运行)。
您可以通过传递tag属性从命令行指定要使用的确切标签名称,但如果您想要生成标签名称,但只需更改默认模式,您可以使用tagNameFormat配置选项。
例如,要将标签名称默认为带有v前缀的版本号,您可以像这样配置您的 pom:
<project> [...] <build> [...] <plugins> [...] <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-release-plugin</artifactId> <version>3.0.0-M5</version> <configuration> <tagNameFormat>v@{project.version}</tagNameFormat> </configuration> </plugin> [...] </plugins> [...] </build> [...] </project>
tagNameFormat 使用@{和}作为分隔符,以确保默认的 Maven 属性插值不会替换版本转换发生之前的值。
支持以下属性:
该项目。前缀是可选的,可以省略。