确定远程仓库中是否存在工件而不下载它

时间:2013-11-14 01:18:24

标签: maven

这可能类似于:Maven: How to check if an artifact exists?

除了我不想从魔法中确定是否存在神器。

我想知道我的仓库中是否存在工件,最好只是从命令行。 (即mvn some:plugin -Drepo ... -Dgroup ... -Dversion ... -Dartifact ... etc。

我想知道这个的原因是:我们有一个yum回购,我们正在将它迁移到Sonatype Nexus回购,这是一个封面下的maven回购。我不希望“mvn部署”一个巨大的rpm只是让它失败,因为它已经存在于repo中。如果它存在于repo中,我不想部署它。

我有什么想法可以检查maven仓库中是否存在工件,而不必先下载它?

1 个答案:

答案 0 :(得分:2)

如果给Maven存储库提供了URL,Maven Wagon插件可以确定是否存在工件: 您必须事先使用groupId,artifactId等构建该URL

mvn wagon:exist -Dwagon.url=http://repo1.maven.org/maven2/javax/servlet/jstl/1.2

在项目中运行时,将生成:

[INFO] 
[INFO] --- wagon-maven-plugin:1.0-beta-4:exist (default-cli) @ proj ---
[INFO]  exists. 
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS