Maven 如何使用curl命令检查nexus中是否已经存在工件版本

Maven 如何使用curl命令检查nexus中是否已经存在工件版本,maven,nexus,nexus2,Maven,Nexus,Nexus2,我需要检查工件版本是否已经存在或是否存在nexus。 如果已经存在,则生成失败,否则继续部署 我尝试了这个curl命令来获取。。但我犯了个错误 curl -s -k --user ${credentials} \"${nexusHost}/service/local/artifact/maven/content?r=${repository}&g=${groupId}&a=${artifactId}&v=${version}&p=${packaging}\" -o

我需要检查工件版本是否已经存在或是否存在nexus。 如果已经存在,则生成失败,否则继续部署

我尝试了这个curl命令来获取。。但我犯了个错误

curl -s -k --user ${credentials} \"${nexusHost}/service/local/artifact/maven/content?r=${repository}&g=${groupId}&a=${artifactId}&v=${version}&p=${packaging}\" -o ${fileName} &> /dev/null
我在哪里提供快照

但这是一个错误。
请帮帮我,谢谢大家的帮助

我得到了这个URL,它提供了与给定的g:a:v值相关的所有细节。 最重要的是,它也给出了总计数,这在我的例子中很有用

curl -u $USERNAME:$USERPASS "https://${host}:8081/nexus/service/local/lucene/search?g=${pomGroup}&a=${pomArtifact}&v=${pomVersion}*"


你犯了什么错误?另外,如果您可以通过浏览器访问工件,为什么不直接在该url上尝试curl命令呢?例如:org.apache.commons:common-lang3:3.10可用,但3.11不可用。所以它可以工作,但不能。我在下面看到错误错误404找不到HTTP错误:404访问/service/rest/beta/search/assets时出现问题。原因:

由J提供动力etty://Are 您允许通过浏览器访问工件吗?如果是这样,我们可以使用该url来确定工件是否已经在工件中。我给出了两个相同的URL,一个有效,一个无效。因为您已经知道要查找的版本,所以我们可以构造一个url,然后尝试将其卷曲到该url,截取http状态代码,并确定它是否已经存在。如果可以的话,我可以给你截取状态代码的脚本。如果工件是快照,那就没有意义了。如果它是一个版本,那么任何使用Maven的部署都会失败……我真的看不出这有什么好处吗?