【问题标题】:Download specific POM file using it's Maven artifact使用它的 Maven 工件下载特定的 POM 文件
【发布时间】:2013-03-27 19:28:34
【问题描述】:

我是 Maven 新手,但总体情况是我需要下载(在命令行中)某个工件的 POM 文件,该文件位于远程 maven 存储库(Artifactory)中,仅使用它的工件名称并制作它动态地(通过仅提供存储库根路径和工件的名称,以便我可以更改它在存储库中的位置并仍然下载它)。

我的第一个问题是:这可能吗,还是我必须详细说明整个工件路径、groupId、artifactId 和版本?

第二点: 我设法使用这个 maven 命令下载了工件,但它只获取 .jar,而不是 POM 文件:

mvn dependency:get -DrepoUrl=MY_REPO_LOC
                   -Dartifact=MY_ARTIFACT_LOC:MY_ARTIFACT_NAME:ARTIFACT_VERSION

知道我该怎么做吗?

【问题讨论】:

  • 请尝试添加-Dartifact=MY_ARTIFACT_LOC:MY_ARTIFACT_NAME:ARTIFACT_VERSION:pom
  • 为什么要做这么奇怪的事情?您喜欢将该工件用作依赖项吗?如果是,只需简单地在其他项目中定义对相应工件的依赖项。

标签: maven command-line pom.xml artifactory artifact


【解决方案1】:

首先,您不需要 Maven。您选择一个二进制存储库,它可以直接为您提供解决方案。方法如下:

由于您不知道工件的位置(我假设存储库名称?因为所有其余部分几乎都被 Maven 锁定,如果您知道 GAVC,您确实知道所有路径)并且您不想列出 groupId 和版本,您必须搜索并准备接收多个结果,您必须在这些结果上暗示一些逻辑来确定您需要哪一个。 以下是从命令行在 Artifactory 中搜索的方法:http://wiki.jfrog.org/confluence/display/RTF/Artifactory%27s+REST+API#Artifactory%27sRESTAPI-SEARCHES 我推荐 GAVC 搜索,因为您知道 artifactId。

如果只是未知版本,只想获取最新版本,可以拨打latest artifact retrievallatest version search

【讨论】:

  • 我完全放弃了我的方法。无论如何谢谢JBaruch
猜你喜欢
  • 2011-12-06
  • 2019-01-13
  • 2020-06-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多