【发布时间】:2010-11-25 08:02:14
【问题描述】:
鉴于我的 pom.xml 中的以下存储库 URL,我如何确定存储库中可用的 spring 和 hibernate 的最新版本? http://repo1.maven.org/maven2
【问题讨论】:
标签: java maven-2 maven-metadata
鉴于我的 pom.xml 中的以下存储库 URL,我如何确定存储库中可用的 spring 和 hibernate 的最新版本? http://repo1.maven.org/maven2
【问题讨论】:
标签: java maven-2 maven-metadata
检索maven-metadata.xml 文件,该文件位于工件目录中,例如https://repo1.maven.org/maven2/com/sun/media/jai_codec/maven-metadata.xml 用于 groupId com.sun.media 和 artifactId jai_codec 的工件。
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>com.example</groupId>
<artifactId>project</artifactId>
<versioning>
<latest>0.0.5</latest>
<release>0.0.5</release>
<versions>
<version>0.0.3</version>
<version>0.0.4</version>
<version>0.0.5</version>
</versions>
<lastUpdated>20090725212606</lastUpdated>
</versioning>
</metadata>
【讨论】:
【讨论】:
正如罗伯特的回答所说,存储库中每个工件的 maven-metadata.xml 文件都包含您需要的版本信息。特别注意元数据中的 latest 和 release 元素。 latest 元素表示要发布的最后一个版本,但这可能不是您想要的版本。例如,它可以是旧版本的维护版本、候选版本或里程碑。发布版本表示打算作为发布处理的最后一个发布版本,因此通常您希望使用此版本。
有关信息,Maven super POM 有一个特殊的 release-profile 配置文件,通过设置 performRelease 属性激活(例如,通过在命令行上传递 -DperformRelease)。除此之外,激活此属性将设置部署插件的 updateReleaseInfo 属性,以便在部署时更新元数据。
【讨论】:
【讨论】: