java - 使用 Ivy API 获取最新版本的依赖项?

标签 java versioning ivy dependency-management

我们有一个简单的 Ivy 存储库,我们在内部服务器上托管(Apache httpd 提供 JAR 及其 XML Ivy 描述符)。

我现在需要以编程方式确定我们的存储库中依赖项的最新版本。因此,如果我们有两个版本的 Mockito,我们的 repo 可能如下所示:

mockito/                       ==>    organisation
    mockito-all                ==>    module
        1.9.4/                 ==>    revision #
            mockito-all-1.9.4.jar
            mockito-all-1.9.4-ivy.xml
        1.9.5/
            mockito-all-1.9.5.jar
            mockito-all-1.9.5-ivy.xml

如果我可以从 Java 中使用 Ivy 确定“1.9.5”是我们拥有的 mockito/mockito-all 模块的最新版本,那就太好了。

这可能不是 Ant 任务,而是可能是使用 ivy.jar 中存在的类的一些自定义 Java 代码。

有什么想法吗?提前致谢!

最佳答案

我相信您可以使用 latest.integration 修订值来指定所需的绝对最新版本。例如,像这样指定您的 Ivy 依赖项:

<dependency org="mockito" name="mockito-all" rev="latest.integration" />

如果您不想要“边缘”版本,您还可以指定 latest.milestonelatest.release。这是对 rev 值的一个很好的解释:http://ant.apache.org/ivy/history/latest-milestone/ivyfile/dependency.html

关于java - 使用 Ivy API 获取最新版本的依赖项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18517842/

相关文章:

java - Java JMF 中的音频 channel 选择

versioning - 用于 Photoshop/Illustrator 和相关二进制文件的最佳版本控制工具?

java - Ivy 存储库有什么最佳实践或工具吗?

sbt - "transitive resolvers"如何与 SBT 一起工作?

Angular 11 没有运行 ngcc

使用 simpleJSon 创建数组数组的 Java 代码

java 。如果在方法定义中参数是接口(interface)的类型,为什么我可以传递对象参数?

java - 将文本字段键设置为jsp变量并将其应用于sql查询

version - 在 "SemVer.org"中,第 7 项中的 "It MAY include patch level changes"是什么意思?

c# - mono-repo 中包的独立版本控制