【发布时间】:2019-03-30 18:50:54
【问题描述】:
如何使用 jenkins shell 将工件上传到 nexus 并自动生成版本?我正在使用这个脚本,我想在工件上传时自动生成版本。
mvn deploy:deploy-file \
-DgroupId= \
-DartifactId= \
-Dversion= \
-DgeneratePom= \
-Dpackaging= \
-DrepositoryId= \
-Durl= \
-Dfile=
【问题讨论】:
-
你的目标版本应该是什么样的?它可以基于 $BUILD_NUMBER 变量吗?
-
目标版本是 0.0.1-SNAPSHOT.jar。我可以从 pom.xml 中获取它吗?我对这些东西很陌生。
0.0.1-SNAPSHOT -
是的,您可以使用 maven 帮助插件从 pom.xml 中获取它。在部署之前在jenkins中运行它执行shell,它将返回版本,并在部署中使用它
mvn org.apache.maven.plugins:maven-help-plugin:2.1.1:evaluate -Dexpression=project.version -
mvn --quite org.apache.maven.plugins:maven-help-plugin:3.0.0:evaluate -Dexpression=project.version -
mvn help:evaluate -Dexpression=project.version | grep -e '^[^\[]'给定的脚本工作正常,这也有效。感谢您的支持
标签: git maven jenkins gitlab nexus