jenkins 如何在Maven versions:set上忽略快照?

qoefvg9y  于 2023-06-28  发布在  Jenkins
关注(0)|答案(1)|浏览(143)

我想让Maven在我们的Jenkins服务器上构建Java项目。应该在pom.xml中正确设置版本。为此,我在预构建步骤中使用:

mvn build-helper:parse-version versions:set -DnewVersion=${parsedVersion.majorVersion}.${parsedVersion.minorVersion}${parsedVersion.qualifier?}.##JenkinsBuildNumber##

0.3.12
0.5.56 etc.

现在它将正确地构建版本。
但现在我注意到,从SNAPSHOTs现在也构建了正常版本:

1.0-SNAPSHOT => 1.0.12
2.0-SNAPSHOT => 2.0.54

这当然不应该。最好没有版本是适应快照在所有,因此Ignoriert。但这不起作用:

mvn build-helper:parse-version versions:set -DignoredVersions=.*-SNAPSHOT -DnewVersion=${parsedVersion.majorVersion}.${parsedVersion.minorVersion}${parsedVersion.qualifier?}.##JenkinsBuildNumber##

内部版本号仍会追加。如何在快照上获取版本:设置为不更改版本?

1.0-SNAPSHOT => 1.0-SNAPSHOT
2.0-SNAPSHOT => 2.0-SNAPSHOT
0.3.0 => 0.3.12
0.5.0 => 0.5.56
1.2.0 => 1.2.124
0wi1tuuw

0wi1tuuw1#

我用预构建步骤解决了这个问题

Conditional Step
Execute Shell
ACTUALVERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout) && if echo ${ACTUALVERSION} | test=$(grep -v "SNAPSHOT"); then exit 0; else exit 1; fi

运行Maven目标

build-helper:parse-version versions:set -DnewVersion=${parsedVersion.majorVersion}.${parsedVersion.minorVersion}${parsedVersion.qualifier?}.${BUILD_NUMBER}

相关问题