如何从maven存储库中推断出RELEASE或LATEST版本?

时间:2016-02-11 22:37:13

标签: maven maven-dependency-plugin

使用此命令,我将一个文件复制出神器:

mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:copy 
-Dartifact=com.example:blah:RELEASE:war 
-DoutputDirectory=/tmp -Dmdep.useBaseVersion=true

我应该在我的tmp dir中得到blah-1.2.3.war。

但是要在shell脚本中处理生成的文件,我当然不能使用RELEASE。我最终找不到blah-RELEASE.war。我正在寻找一种优雅的方法来从artifactory或nexus中推断出这个版本字符串,这样我就可以使用它的绝对文件名来操作生成的文件,没有通配符,也无需使用ls或find查询/ tmp。

此刻,我为战争取了pom,然后grep / sed版本。在詹金斯做这样的事情

mvn org.apache.maven.plugins:maven-dependency-plugin:2.10:copy \
-DoutputDirectory=${WORKSPACE} \
-Dartifact=com.example:blah:RELEASE:pom \
-Dmdep.stripVersion=true

VERSION=$( grep -A 1 "<artifactId>blah</artifactId>" \
${WORKSPACE}/blah.pom | sed -nr 's|.*<version>(.*)</version>.*|\1|p' )

0 个答案:

没有答案