【问题标题】:Generating maven dependencies using list of jar file names使用 jar 文件名列表生成 maven 依赖项
【发布时间】:2019-12-30 15:38:41
【问题描述】:

我正在将具有许多依赖项的 java 项目转换为 maven 项目。

这些 Java 项目具有依赖项,这些依赖项存在于 maven Central 中。现在,我正在尝试自动将这种转换为 maven 项目,以将所有库作为依赖项包含在内并生成一个 maven pom.xml。

我想到了下面的方法

第 1 步 - 从 jar 文件名中找到版本,如果未找到 - 在清单文件中搜索。

第 2 步 - 从 jar 文件名中找到工件 ID - 虽然可能并非对所有 jar 都有效。

第 3 步 - 定位组 id - 展开 jar 文件,并尝试使用包名创建组 id。

第 4 步 - 使用 search api 验证依赖关系

有没有更好的方法来执行上述步骤。

【问题讨论】:

  • 1、2 和 4 有效。不要尝试 3,包名很少匹配组 ID 并且 jars 可以有很多包
  • 包名只是一个尝试的选项,因为我没有看到任何其他方法来查找组 ID...
  • 也许您可以使用工件 ID 在 Maven Central 上获取少量匹配项。然后,您可以将 Maven Central 上的组 ID 与 jar 中的包进行比较,并寻找相似之处

标签: java maven dependencies pom.xml


【解决方案1】:

一个重要的附加选项是计算 jar 的 SHA1 并在 MavenCentral 中搜索它。

此外,您可以在 jar 中查找 pom.properties 文件,如果 jar 最初是使用 Maven 构建的,则该文件存在。

【讨论】:

    猜你喜欢
    • 2019-11-06
    • 2014-01-03
    • 2018-11-03
    • 2015-09-14
    • 2020-11-20
    • 2020-09-21
    • 1970-01-01
    • 2019-06-20
    • 2012-06-25
    相关资源
    最近更新 更多