访问maven-release-plugin的发布版本

时间:2018-03-22 00:52:16

标签: maven maven-release-plugin

我在Jenkins工作中使用maven-release-plugin,在SCM运行之前我有一个" Run构建步骤"在我执行shell脚本的地方启用。我想访问此shell脚本中的发行版但无法访问它。我不确定在此插件中存储发行版本的变量是什么。

我尝试过使用

\"release_version\": \"$releaseVersion\"

因为我看到正在执行的maven命令是: Executing Maven: -B -f /workspace/myProject/pom.xml -DdevelopmentVersion=0.0.34-SNAPSHOT -DreleaseVersion=0.0.33 -Dtag=v0.0.33 -U -DignoreSnapshots=true -Darguments=-Dpaypal.buildid=${FUSION_BUILD_GENERATED} -DskipTests=false -Dmaven.javadoc.skip=true -Dresume=false release:prepare release:perform

以及

\"release_version\": \"$MVN_RELEASE_VERSION\"

他们两个都没有工作。

1 个答案:

答案 0 :(得分:0)

maven-release-plugin从您的 pom.xml 中的project.version元素派生releaseVersion。另外请注意,-DreleaseVersion=0.0.33将该值作为参数传递,因此不涉及可从插件外部使用的变量。

但是,如果您需要脚本中的发行版,则可以使用

mvn help:evaluate -Dexpression=project.version -q -DforceStdout

这将为您提供1.0.1-SNAPSHOT之类的信息,具体取决于您的版本架构。您可以通过cut -d- -f1之类的bash命令摆脱 -SNAPSHOT 。或者您运行类似

mvn release:prepare -DdryRun=true

为您提供一个名为 pom.xml.tag 的文件。其中包含不带 -SNAPSHOT 的version元素。使用上面的命令从XML文件读取它。之后,您可以使用mvn release:clean

清理目录