【问题标题】:Maven: dependency:get -DoutputDirectory doesn't work. (How to download or copy an artifact with all its dependencies to specific folder?)Maven:依赖项:get -DoutputDirectory 不起作用。 (如何将具有所有依赖项的工件下载或复制到特定文件夹?)
【发布时间】:2019-06-14 01:10:34
【问题描述】:

我尝试了以下方法,但它不起作用。

mvn 依赖:get -Dartifact=com.android.tools.build:gradle:3.4.0-alpha07 -DoutputDirectory=C:\Users\username\Desktop\MyFolder

有人知道实现我目标的另一种方法吗?

我的目标是在一个文件夹中下载一个包含所有依赖项的工件。

dpendency:copy-dependencies 命令只复制 jar 文件,但我想要一个包含所有依赖项的工件,例如本地存储库文件夹结构。例如,下面的照片显示了 an artifact 及其所有从 maven 存储库下载的依赖项(我想要这个)。

我使用dependency:get 命令下载this artifact 及其所有依赖项,然后将其存储在本地存储库中并与本地存储库中的其他文件夹合并。

我如何将此工件及其所有依赖项从本地存储库(或 maven 存储库)复制到另一个文件夹。

我不想使用 dependency:copy-dependencies 命令,因为它只复制 jar 文件,但我想要文件和文件夹,因为它们是使用 dependency:get 命令下载的(就像本地存储库文件夹结构一样)。

很遗憾,以下命令没有将文件和文件夹存储在我想要的位置。

mvn 依赖:get -Dartifact=com.android.tools.build:gradle:3.4.0-alpha07 -DoutputDirectory=C:\Users\username\Desktop\MyFolder

【问题讨论】:

  • 类似的问题最好不要一而再再而三地问,细节在cmets中讨论。我仍然不明白您所说的“它只复制 jar 文件”是什么意思。您还想要哪些其他文件? pom 文件?目录?
  • 也许您可以通过复制所有依赖项来举例说明您的意思。您期望哪些文件采用哪种结构?
  • 另外,我会对你想要这个做什么感兴趣,即你想用这个“具有所有依赖项的工件”做什么。
  • 我同意@JFMeier,混合他的答案和我在上一篇文章中提供的答案将下载与 artifactId 相关的所有依赖项。但它似乎不是你想要的
  • 请不要通过破坏您的帖子为他人增加工作量。通过在 Stack Exchange 网络上发帖,您已在 CC BY-SA 3.0 license 下授予 Stack Exchange 分发该内容的不可撤销的权利(即无论您未来的选择如何)。根据 Stack Exchange 政策,帖子的非破坏版本是分发的版本。因此,任何破坏行为都将被撤销。如果您想了解更多关于删除帖子的信息,请参阅:How does deleting work?

标签: android maven dependencies repository


【解决方案1】:

怎么样

mvn -Dmaven.repo.local=someDir dependency:get ...

?

您可以在命令行中将任何目录指定为本地存储库,因此dependency:get 会将结果复制到该目录。

【讨论】:

  • 这不是我的答案。因为依赖的文件是下载到本地仓库的。但我只想要与我在 CDM 中设置的依赖项关联的文件夹和文件。不多。 (我不想要依赖的文件和文件:get)
  • 编辑:因为依赖的文件是下载到本地仓库的>>> 因为依赖插件的文件是下载到本地仓库的
  • @JFMeier 喜欢 maven.repo.local 参数,是否有所有可用参数的文档?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-27
  • 1970-01-01
  • 1970-01-01
  • 2015-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多