【问题标题】:Extract artifactId and version number from Maven-generated Jar从 Maven 生成的 Jar 中提取 artifactId 和版本号
【发布时间】:2020-04-08 22:22:12
【问题描述】:

如果有一堆 Maven 创建的 Jar 文件。它们的名称包括 artifactId 和版本号。我想从 Jar 文件名中提取 artifactId 和版本号。然而,事实证明这远非易事。我有诸如qpid-broker-plugins-amqp-0-8-protocol-7.0.6.jar 之类的文件名,其中有两个部分看起来像一个版本号(0-87.0.6),但只有后者是版本号。然后是adminpages-4.11.0-beta-20191212-150315-7eec2eb4c.jar,其中4.11.0-beta-20191212-150315-7eec2eb4c 是版本。因此我的问题是是否有一种安全可靠的方法从 Jar 文件名中提取版本号?

【问题讨论】:

  • 您能否详细解释一下您要解决的问题类型?
  • 我想列出 Web 应用程序中使用的库。我扫描 WEB-INF/lib 文件夹,然后需要从文件名中提取名称和版本作为单独的部分。但似乎没有通用的方法可以在所有情况下都做到这一点。

标签: maven version


【解决方案1】:

没有。

文件名通常采用以下格式

artifactId-version-classifier.extension

如果分类器不为空,否则

artifactId-version.extension

所有三个元素(artifactIdversionclassifier)都可以是任意字符串。

如果您需要找到给定 jar 的坐标,还有其他更可靠的方法。

【讨论】:

    猜你喜欢
    • 2021-06-17
    • 2013-03-04
    • 2014-06-24
    • 1970-01-01
    • 1970-01-01
    • 2012-06-07
    • 2017-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多