如何在公共 Maven/Ivy 存储库中搜索特定类?

Posted

技术标签:

【中文标题】如何在公共 Maven/Ivy 存储库中搜索特定类?【英文标题】:How to search public Maven/Ivy repositories for a particular class? 【发布时间】:2012-04-20 20:49:40 【问题描述】:

有像http://mvnrepository.com/ 这样的网站可以搜索“工件”并给出定义,我可以将其添加到我的项目中,以便从公共存储库自动下载库。

但是这个特定的示例 (mvnrepository.com)(我实际上知道的唯一工作)按定义限制为“按组、工件或描述搜索”,而我想按类全名搜索。例如,我想输入org.apache.commons.lang.NotImplementedException 以获取<dependency org="commons-lang" name="commons-lang" rev="2.6"/>(或类似名称)作为答案。有这样的设施吗?

【问题讨论】:

我通常从 jarfinder.com 开始。 【参考方案1】:

如果您想搜索 Classes,您应该使用 http://search.maven.org 并点击“高级搜索”...这是针对 Maven Central 的

【讨论】:

那个“高级搜索”给了我一个标准类的 470 个工件 :-( 有没有一个不太高级但更有用的搜索引擎? 您可以在搜索框中使用类似的内容:v:"2.6.4" c:"com.sun.jersey.spi.container.servlet.ServletContainer"【参考方案2】:

@khmarbaise 的答案是直截了当的,但如果您可能想搜索几个额外的公共 Maven 存储库(如 JBoss),而不仅仅是 Maven Central,我建议使用 http://grepcode.com。

编辑:不幸的是,我曾经强烈推荐过这样的东西的 http://grepcode.com 似乎已经死了。目前我不知道有比https://search.maven.org 更好的地方,@khmarbaise 已经回答了。

【讨论】:

虽然有时它可能很方便,但现在 GrepCode 中的索引 jar 已经过时了 为 grepcode.com 获取 HTTP 503 Service Unavailable 是的,Grepcode 似乎已经死了(RIP - 我经常使用那个网站),所以希望社区可以找到一个新的网站来做这件事【参考方案3】:

我建议尝试所有的搜索引擎。现在我已经浪费了几个小时来考虑如何上传一个工件,而事实证明它已经存在于 repo 中。这是junit-addons,既是groupId 也是artifactId,可以在pom 中验证。我的尝试:

    http://mvnrepository.com - 没有 http://search.maven.org - 是的 http://grepcode.com - 没有 http://jarfinder.com - 是的,但只能直接下载,不适用于 maven

我是一个 maven 新手,所以我不能说第二个链接是最好的。虽然 tt 对我来说是唯一有帮助的。

【讨论】:

jarfinder 域名现已出售。【参考方案4】:

https://javalibs.com/ 是一个很好的在线搜索 maven repos 的网站。

【讨论】:

【参考方案5】:

另外一个搜索引擎:JAR-Download.com:

班级搜索页面:Search classes in the Maven repository。 为便于参考,存档搜索页面:Search classes in the Maven repository。

【讨论】:

以上是关于如何在公共 Maven/Ivy 存储库中搜索特定类?的主要内容,如果未能解决你的问题,请参考以下文章

如何在二维 numpy 数组中搜索特定 XY 对的位置?

在 Solr 中搜索特定 ID

查询以在 db 列中搜索特定值

如何使用自定义 gradle 插件而不将其发布到 maven/ivy 存储库?

如何在子目录中搜索特定文件?

如何在jtree中搜索特定节点并使该节点展开。?