gpt4 book ai didi

maven - 导出 Maven 依赖项并维护存储库文件夹结构

转载 作者:行者123 更新时间:2023-12-03 22:44:37 26 4
gpt4 key购买 nike

我想知道是否可以导出/复制使用 Maven 管理的项目的依赖项,同时维护本地存储库中采用的文件夹结构。

我需要的根源是我在本地存储库(~8GB)中积累了近十年的大量 Artifact 。我不再处理以前任务中那些吸引了大部分 Artifact 的旧项目,现在,我需要将单个项目(约 650MB Artifact )所需的内容移动到另一台计算机上。我不能只是设置另一台计算机再次下载 Artifact ,因为在以前的分配中,许多 Artifact 是从本地 Nexus 代理检索的。此外,我没有这些 Artifact 的源代码,所以我不能只安装它们。
dependency:copy-dependencies没有用,因为所有 Artifact 都被简单地转储到一个文件夹中,而不是说 .m2\repository\mysql\mysql-connector-java\5.1.38\mysql-connector-java-5.1.38.jar
我相信我的问题也可以改写为“如何从本地 Maven 存储库中提取仅与一个特定项目相关的存储库子集?”

最佳答案

您实际上可以使用 Maven Dependency Plugin和它的 copy-dependencies目标,正如你所提到的。

你实际上错过的是它的 useRepositoryLayout 选项

Place each artifact in the same directory layout as a default repository.
example: /outputDirectory/junit/junit/3.8.1/junit-3.8.1.jar.

  • Type: boolean.
  • Since: 2.0-alpha-2.
  • Required: No.
  • User Property: mdep.useRepositoryLayout.
  • Default: false.


因此,您可以执行 - 例如 - 以下内容:
mvn dependency:copy-dependencies -Dmdep.useRepositoryLayout=true \
-DoutputDirectory=.m2/repository

关于maven - 导出 Maven 依赖项并维护存储库文件夹结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35999109/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com