0

我需要使用java以编程方式获取存储在maven本地存储库元数据文件(maven-metadata.xml)中的maven工件(使用GAV坐标)的时间戳和构建编号。我知道我可以简单地解析这个文件,但这是一个糟糕的解决方案。有没有人有任何想法?谢谢你。

4

1 回答 1

0

您所说的时间戳是 Maven 如何存储快照版本的一个特性。

例如,如果工件的版本是 1.0-SNAPSHOT,则每次调用“安装”目标都会创建一个由其时间戳引用的唯一工件。这个概念是另一个构建请求版本 1.0-SNAPSHOT,Maven 将返回与该版本匹配的最后构建的工件。

我不熟悉 Maven 代码库,但我建议查看解析版本的代码,尤其是快照。时间戳可能是可检索的,但如果它是内部细节,我不会感到惊讶。

最后,我更喜欢将我的构建推送到 Maven 存储库管理器。我发现Nexus非常轻巧,在我的笔记本电脑上运行良好。长话短说,Nexus 有一个 REST API,可用于检索工件详细信息,包括快照时间戳:

于 2015-01-31T10:18:30.140 回答