Java 如何在Jenkins管道中获得maven版本
我正在与詹金斯一起创建CI管道。需要用项目的Maven版本标记docker图像,例如Java 如何在Jenkins管道中获得maven版本,java,maven,docker,jenkins,continuous-integration,Java,Maven,Docker,Jenkins,Continuous Integration,我正在与詹金斯一起创建CI管道。需要用项目的Maven版本标记docker图像,例如0.0.1-SNAPSHOT 尽管maven版本是基于公开的POM_版本,但它似乎只适用于“maven项目”。我尝试将管道的Jenkins文件中的变量用作${POM_VERSION},但它无法识别该属性 获取版本号的最佳方法是什么?解析pom.xml并使用bash脚本对版本进行grep,并在Jenkinsfile?内调用它。您可以使用Spotify docker maven插件使用项目版本标记docker图像,如
0.0.1-SNAPSHOT
尽管maven版本是基于公开的POM_版本
,但它似乎只适用于“maven项目”。我尝试将管道的Jenkins文件中的变量用作${POM_VERSION}
,但它无法识别该属性
获取版本号的最佳方法是什么?解析pom.xml并使用bash脚本对版本进行grep,并在
Jenkinsfile
?内调用它。您可以使用Spotify docker maven插件使用项目版本标记docker图像,如下所示:
<imageTags>
<imageTag>${project.version}</imageTag>
<imageTag>latest</imageTag>
</imageTags>
<imageName>${image.suffix}/${project.artifactId}:${project.version}</imageName>
${project.version}
最新的
${image.suffix}/${project.artifactId}:${project.version}
您使用什么maven插件创建docker图像?@IssamEL ATIF Spotify您可以这样命名图像${project.artifactId}:${project.version}
如何控制何时使用哪个标记?您的意思是如何控制在运行docker图像时使用哪个标记?imageTags块的用途是什么?为什么我们需要多个标签?请参阅docker标签文档