gpt4 book ai didi

plugins - Maven2 如何知道在哪里可以找到插件?

转载 作者:行者123 更新时间:2023-12-02 12:28:23 26 4
gpt4 key购买 nike

我正在使用 Maven2,但我似乎在我的存储库中找不到任何插件。我收到类似的错误

repository metadata for: 'org.apache.maven.plugins' could not be found on repository: myrepo

其中 myrepo 是我的存储库的名称。

我的问题是 Maven 如何知道在哪里可以找到插件?我的错误中引用了元数据,什么元数据需要在哪里以及必须采用什么格式?到目前为止,我在寻找文档方面运气不佳......

(我对使用中央存储库的简单答案不感兴趣,我想知道为什么 myrepo 不起作用。)

谢谢!

最佳答案

在每个工件的根目录中(存储库根目录 [groupId]/[artifactId] 的相对路径),Maven 期望找到一个 maven-metadata.xml 文件。它使用此文件来确定可用版本、最新版本和已发布版本。

例如common-logging's metadata from repo1列出了所有可用版本并告诉我们截至 2008 年 11 月 28 日发布的版本为 1.1.1。

<?xml version="1.0" encoding="UTF-8"?><metadata>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
<versioning>
<release>1.1.1</release>
<versions>
<version>1.0</version>
<version>1.0.1</version>
<version>1.0.2</version>
<version>1.0.3</version>
<version>1.0.4</version>
<version>1.1</version>
<version>1.1.1</version>
</versions>
<lastUpdated>20071128191817</lastUpdated>
</versioning>
</metadata>

Maven 会将每个远程存储库的元数据下载到本地存储库(名称为 maven-metadata-[repo name].xml),以便它可以检查可用版本,而不必每次都访问每个存储库。如果您想强制 Maven 重新获取元数据,您可以使用命令行上的“-U”开关来实现。

如果您有自己的存储库,则需要发布此类元数据,以便 Maven 可以确定可用版本是否是正确的。最简单的方法是使用像 Nexus 这样的存储库管理器。或Artifactory这两者都将为您管理元数据。

关于plugins - Maven2 如何知道在哪里可以找到插件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1158131/

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