【问题标题】:Find a Maven Dependency or Repo from an Import Statement in Java Code从 Java 代码中的 Import 语句中查找 Maven 依赖项或存储库
【发布时间】:2014-04-19 13:30:57
【问题描述】:

有没有一种简单的方法来查找 Java 代码中 import 语句中指定的库的 Maven 信息?

例如,如果我在 Internet 上看到一些看起来很有用的随机 Java 代码(经常发生!),并且我想将其复制到 Maven 项目中,我如何找出该依赖信息是什么(即groupId、artifactId 和 version) 放入 POM.xml 文件中?

例如如果我看到这个:

import wow.magiclibrary.net.*;

public class Magic
{
  public static void main ( String[] args ) throws IOException 
  {
    try 
    {    
      MagicLibrary ml = new MagicLibrary( args[0] );

      ml.doSomethingAmazing();

...

...我在哪里可以找到放入 POM.xml 文件的信息,以使 Maven 将 wow.magiclibrary.net 库作为依赖项从它来自的任何存储库下载?

<dependency>
    <groupId>wow.magiclibrary.net</groupId>
    <artifactId>magiclibrary</artifactId>
    <version>2.0.0</version>
</dependency>

我是否只需要使用 Google 在网络上搜索包含该库的存储库,手动下载 jar 并将它们安装到我的本地 maven 存储库中?

只是好奇。我很懒。我知道我可以在下载 jar 文件后做这样的事情:

mvn install:install-file -DgroupId=wow.magiclibrary -DartifactId=magiclibrary \
     -Dversion=2.0.0 -Dpackaging=jar -Dfile=magiclibrary2.0.0.jar -DgeneratePom=true

...但是如果有一种方法可以通过 Maven 自动执行搜索和安装过程,那将会很糟糕。

【问题讨论】:

    标签: java maven


    【解决方案1】:

    当我在寻找我知道的库的 maven 依赖项时,我通常会去

    http://mvnrepository.com/

    如果我正在寻找一个我不知道的图书馆,我会先做一个简单的谷歌搜索或grepcode.com,然后去 mvnrepository.com

    mvnrepository 允许您轻松复制粘贴 maven 依赖项,这里是 commons.lang 版本 2.6 的示例

    http://mvnrepository.com/artifact/commons-lang/commons-lang/2.6

    【讨论】:

    • 另一个搜索工件的好来源是search.maven.org。它提供了关于它们的更详细(和更好地呈现)的信息。查看this page 的一些例子。
    【解决方案2】:

    您可以使用grepcode.com 等在线工具,它会识别您的 jar 名称和 maven 工件。这是apache commons-lang StringUtils 的示例。

    【讨论】:

    • Yessss...这就是我想要的。干杯
    • 很高兴我能帮上忙。如果您发现答案是您所需要的,请考虑按照此链接meta.stackexchange.com/questions/5234/… 中的说明将其标记为已接受
    猜你喜欢
    • 2012-01-10
    • 1970-01-01
    • 2011-02-10
    • 2015-02-17
    • 2023-03-30
    • 2019-02-01
    • 1970-01-01
    • 2013-10-19
    相关资源
    最近更新 更多