gpt4 book ai didi

java - 如何强制 Maven 从中央存储库下载 maven-metadata.xml?

转载 作者:搜寻专家 更新时间:2023-10-31 08:16:17 24 4
gpt4 key购买 nike

我想做的是强制 Maven 为我在本地存储库中的每个工件下载“maven-metadata.xml”。

默认的 Maven 行为是仅从远程存储库下载元数据(参见 this question)。

我为什么要这样做:

目前我有一个在构建机器上运行的远程存储库。远程存储库是指位于构建机器中的目录,其中包含构建 Maven 项目所需的所有依赖项。请注意,我没有使用像 Nexus 这样的存储库管理器,存储库只是我上传到我的构建机器的本地存储库的副本。

但是,由于我的本地存储库不包含“maven-metadata.xml”文件,因此构建机器存储库中也缺少这些元数据文件。如果我可以从中央存储库检索元数据文件,那么就可以将工作的远程存储库上传到我的构建机器。

最佳答案

您不想从公共(public)存储库获取元数据,它会包含给定工件的所有可用版本,而您的存储库将包含发布的一些子集。

值得指出的是,使用存储库管理器确实会更好。以下步骤允许您一次性生成工件元数据。但如果您的需求发生变化,您将不得不重复该过程或手动更新文件,那么为什么不直接使用管理器呢? Nexus 可以独立运行,占用空间非常小。


即使您不打算将 Nexus 用作存储库管理器,您仍然可以使用它来生成元数据。

  1. 第一个install关系。
  2. 找到 nexus 工作目录(默认为 ${user.home}/sonatype-work。
  3. 将本地存储库内容复制到 nexus-work/releases 子目录。
  4. Start Nexus并在浏览器中连接到 Nexus 主页(默认 http://localhost:8081/nexus )
  5. 使用管理员账号登录(密码admin123)
  6. 单击左侧的存储库 链接。
  7. 选择 Releases 存储库,右键单击并单击Rebuild Metadata

片刻之后,您应该会为所有工件生成元数据。然后,您可以将它们复制到您需要的任何位置并卸载 Nexus。

关于java - 如何强制 Maven 从中央存储库下载 maven-metadata.xml?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1273266/

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