【问题标题】:How to upload Jar to Archiva without having the Version number appended?如何在不附加版本号的情况下将 Jar 上传到 Archiva?
【发布时间】:2016-08-12 11:56:33
【问题描述】:

如果我使用 UI 控制台将 jar 文件添加到我们的 Apache Archiva Maven 存储库,则版本号会添加到 jar 文件中,但这不是我们想要的。例如,如果您浏览 http://mvnrepository.com/ 以获取要下载的 jar,则该版本是一个子文件夹,并且不附加到 jar 文件名。

正如您在下面看到的,我正在尝试通过 UI 将第 3 方 Jar 添加到存储库中,但版本会附加到名称中。

Collection: /com/microsoft/sqlserver/jdbc/sqljdbc41/4.1.5605.100
com/microsoft/sqlserver/jdbc/sqljdbc41 (Parent)


Name

Size (Bytes)

Last Modified

maven-metadata.xml 184   12/08/16 11:30 
maven-metadata.xml.md5 52   12/08/16 11:04 
maven-metadata.xml.sha1 60   12/08/16 11:04 
sqljdbc41-4.1.5605.100.jar 586192   12/08/16 11:04 
sqljdbc41-4.1.5605.100.jar.md5 60   12/08/16 11:04 
sqljdbc41-4.1.5605.100.jar.sha1 68   12/08/16 11:04 
sqljdbc41-4.1.5605.100.pom 417   12/08/16 11:04 
sqljdbc41-4.1.5605.100.pom.md5 60   12/08/16 11:04 
sqljdbc41-4.1.5605.100.pom.sha1 68   12/08/16 11:04 

非常感谢任何帮助。 迈克

【问题讨论】:

  • 将版本号添加到 jar 中是您在 maven 中处理 jar 的常用方法。 Nexus(以及 Maven Central)也以这种方式存储罐子。为什么要避免这种情况?
  • 你是如何下载没有版本的神器的?我打开第一页mvnrepository.com/artifact/org.uberfire/uberfire-commons/…,我看到(在单击到存储库中心的链接后)带有版本的文件。无论如何,你应该解释你想要得到什么,而不是询问如何修改 Archiva 存储逻辑
  • +1 :这是一个有效的问题,我也遇到了同样的问题。 @michaldo:在许多用例中,您只想保留文件的名称(不包括其版本)。在为我的 puppet 模块从档案下载文件时,我必须这样做。
  • @AtmeshMishra 感谢您的澄清。我提出了 2 个解决方案作为答案

标签: java apache maven upload archiva


【解决方案1】:

Archiva(和其他存储库)保存工件和版本是必不可少的。所以这个问题的表述很糟糕。可能会有一个问题,如何下载没有版本的工件(感谢 Atmesh Mishra)。

使用 Archiva API 的解决方案 1:How do I download programmatically a single artifact from apache archiva using REST?

使用 maven 依赖插件的解决方案 2:目标 dependency:copy 带有选项参数 stripVersion=true:http://maven.apache.org/plugins/maven-dependency-plugin/copy-mojo.html#stripVersion

【讨论】:

    猜你喜欢
    • 2020-08-04
    • 1970-01-01
    • 1970-01-01
    • 2015-09-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多