我可以将快照的时间戳更改为内部版本号吗?

Ale*_*lex 6 nexus maven-3 maven maven-deploy-plugin maven-jar-plugin

我们最近看到一个错误,Maven试图检索一个不存在的SNAPSHOT.正如您所看到的那样,构建号(无论是什么,因为它不是我们的构建号)匹配,但时间戳不匹配,导致构建失败.每次说20次构建都会发生一次.

这是在Nexus中: 在nexus

这就是构建过程中发生的事情:

未找到艺术家

正如您所看到的那样,它会尝试检索relations-models:jar:1.1-20170901.134955-278哪些不存在,而20170901.134954-278确实存在.注意一秒的偏移量.

  1. 还有其他人有这个问题吗?一个解决方法?
  2. 我想用版本号替换时间戳的,但我不能找到一种方法来影响快照的方式后缀.有谁知道这是怎么做到的吗?

这涉及(大)多模块项目,其中这是子模块之一.

Jar插件配置如下

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> <mainClass>me.magnet.redirect.RedirectService</mainClass> <useUniqueVersions>false</useUniqueVersions> <classpathLayoutType>custom</classpathLayoutType <customClasspathLayout>$${artifact.artifactId}-$${artifact.baseVersion}.$${artifact.extension}</customClasspathLayout> </manifest> </archive> </configuration> </plugin>

像这样的部署插件:

<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> <configuration> <uniqueVersion>false</uniqueVersion> <deployAtEnd>true</deployAtEnd> </configuration> </plugin>

构建也是并行运行的.

Zil*_*nas 1

Maven 将尝试下载maven-metadata.xml存储库中文件中列出的最新快照版本。

听起来您已在 中列出了此版本,maven-metadata.xml但该文件实际上不存在。这可能由于上传的构建不完整所致;例如,如果多个模块尝试使用完全相同的 spanshot 版本号,但其中一些模块无法编译并且未上传到存储库。(另外,可能有不正确的mavenpom.xml配置)