所有存储库中相同形式的Maven SNAPSHOT 的时间戳?

Is the timestamp of Maven SNAPSHOTs of the same form in all repositories?

我们使用 Nexus 2,它为每个 SNAPSHOT jar 分配一个时间戳。此时间戳可用于寻址特定的 jar。

我们正在考虑将来迁移到 Nexus 3 或 Artifactory。我想知道时间戳格式是否是对所有供应商都相同的 Maven 标准。

这不是由 Nexus 处理(或任何底层工件存储库管理器),这是在部署期间由 Maven 本身处理的。

时间戳是根据工件部署事务计算的(意味着属于工件的所有文件(.pomjar.md5.sha1 and/or 生成的任何其他文件)。Maven 生成校验和并上传具有相同时间戳的所有工件文件。然后更新 maven-metadata.xml 文件,以便 Maven(类似)客户端的未来请求可以知道您的内容1.2.3-SNAPSHOT 实际上转化为时间戳。基本上,在下载工件之前,Maven 会下载它的关联 maven-metadata.xml 文件(如果存在)。

所以,为了回答您的问题,这不是由存储库处理的,升级到更新版本的 Nexus 应该不会影响它。 (如果是这样,那就是一个错误)。

有关更多详细信息,您可以查看 Whosebug 上的 maven-metadata 标签,我在其中添加了一些解释和一些有用的链接。