Maven nexus v = LATEST不工作

d-m*_*man 6 repository nexus maven

我有maven nexus本地存储库,在运行时我从maven repo下载/获取jar/war文件并将其复制到tomcat.我正在使用以下网址来下载jar/war文件.

http://localhost/maven/nexus/service/local/artifact/maven/redirect?r=releases&g=com.rdc.app&a=rum&v=LATEST&p=war&c
Run Code Online (Sandbox Code Playgroud)

当我通过param v = 1.2.4我可以下载特定版本的战争,如果我想要最新版本,我发现v = LATEST将在repo中返回最新版本的jar/war文件.

问题是maven repo的最新版本是12.53.3当我使用v = LATEST它正在下载12.46.1 i再次更新12.53.3并再次尝试v = LATEST但结果与之前相同.

此外,如果最新的jar是SNAPSHOT其他,那么释放jar/war v = LATEST仅支持发行版本.

我尝试了以下文档,但似乎无法正常工作.

repository.sonatype.org/nexus-core-documentation-plugin/core/docs/rest.artifact.maven.redirect.html
Run Code Online (Sandbox Code Playgroud)

car*_*ing 6

如果你问我,这就是一个错误.我也面对过它.

基本上,LATEST版本并不意味着1.2.3中的"最新版本"与1.2.2相比,它意味着"最近部署的工件的版本".因此 - 如果您有多个项目分支并且工件由持续集成服务器部署,则您不能信任LATEST.

更新:检查Tari aka Manga的回复,了解Nexus中的更新行为.


Mar*_*nor 4

这个问题和答案已经有 6 年历史了。请注意,sonatype 有一个新版本的 Nexus,并修改了后端。

以下是有关计划任务的文档的更新链接,其中之一是“重建 Maven 元数据文件”:

原答案

听起来像是元数据问题。Nexus 有一个计划任务,可用于重建存储库的元数据。