Maven 2 如何使maven-metadata.xml的发布版本成为最高版本号?
我有一个项目a需要AAA:BBB作为依赖项Maven 2 如何使maven-metadata.xml的发布版本成为最高版本号?,maven-2,sonatype,maven-deploy-plugin,maven-metadata,Maven 2,Sonatype,Maven Deploy Plugin,Maven Metadata,我有一个项目a需要AAA:BBB作为依赖项 < dependency> < groupId>AAA< /groupId> < artifactId>BBB< /artifactId> < version>RELEASE< /version> < /dependency> AAA BBB 发布 部署AAA:BBB的分支版本(例如,0.2.1-4)后,发布版本号是最新部署的
< dependency>
< groupId>AAA< /groupId>
< artifactId>BBB< /artifactId>
< version>RELEASE< /version>
< /dependency>
AAA
BBB
发布
部署AAA:BBB的分支版本(例如,0.2.1-4)后,发布版本号是最新部署的版本号(0.2.1-4),而不是最高的版本号(0.3.3)。
maven-metadata.xml:
< metadata >
< groupId >AAA< /groupId >
< artifactId>BBB</artifactId >
< versioning >
< latest >0.3.3< /latest >
< release >**0.2.1-4**< /release >
< versions >
< version>0.1.0< /version>
< version>0.1.0-1< /version>
< version>0.1.0-2< /version>
< version>0.2.1< /version>
< version>0.2.1-3< /version>
< version>0.3.1< /version>
< version>0.3.3< /version>
< version>**0.2.1-4**< /version>
</versions >
< lastUpdated >20130628092226< /lastUpdated>
< /versioning>
< /metadata>
AAA
BBB
0.3.3
**0.2.1-4**
0.1.0
0.1.0-1
0.1.0-2
0.2.1
0.2.1-3
0.3.1
0.3.3
**0.2.1-4**
20130628092226
因此,在构建项目A时,AAA:BBB的发布版本号将解析为0.2.1-4,而不是0.3.3,这将导致构建失败。
只有通过Sonatype nuxus UI重新编译元数据后,我们才能获得最高的版本号。
重建元数据后具有排序版本号的maven-metadata.xml:
< metadata >
< groupId >AAA< /groupId >
< artifactId>BBB</artifactId >
< versioning >
< latest >0.3.3< /latest >
< release >**0.3.3**< /release >
< versions >
< version>0.1.0< /version>
< version>0.1.0-1< /version>
< version>0.1.0-2< /version>
< version>0.2.1< /version>
< version>0.2.1-3< /version>
< version>0.2.1-4< /version>
< version>0.3.1< /version>
< version>**0.3.3**< /version>
</versions >
< lastUpdated >20130628092226< /lastUpdated>
< /versioning>
< /metadata>
AAA
BBB
0.3.3
**0.3.3**
0.1.0
0.1.0-1
0.1.0-2
0.2.1
0.2.1-3
0.2.1-4
0.3.1
**0.3.3**
20130628092226
部署工件后,是否可以将maven metadata.xml的
发布版本
更新为最高版本
号?
谢谢。您希望实现什么,因为所有版本都已发布,所以问题出在哪里?您正在使用存储库管理器吗?到底是什么导致了问题?我使用的是sonatype nexus存储库管理器。如果发布版本不是最高版本号(例如branch版本),那么如果依赖项版本设置为RELEASE,我们将获取错误的版本号。因此,我想保证发布版本始终是最高版本。为什么要将版本设置为
RELEASE
version?你使用哪个Maven版本?您的意思是版本号(例如分支机构版本)和版本号的模板吗?你能举个例子吗?它是否遵循规则?上述示例是来自Nexus还是来自本地存储库?1。设置发布版本可以省去检查最新编号的工作。2.我正在使用maven 2.2.1。3.版本号。4.原文经过编辑,详细阐述了这个例子。5.不,我把构建号看作是分支版本的另一个增量版本号。6。上面的例子来自Nexus。