- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们最近在构建环境中添加了第二台构建机器,并开始遇到非常奇怪的偶尔构建失败。
我有两台独立的 Maven 构建机器,A 和 B,每台都运行 Maven 2.2.1 并与共享的 Nexus 1.5.0 存储库管理器进行通信。我的问题是,在 B 上构建有时会失败,因为它拒绝下载先前由 B 构建的常见依赖项“acme-1.0.0-SNAPSHOT”的更新版本>A 并上传到 Nexus。
查看两台机器上的本地存储库,我注意到存储库元数据中有一些奇怪的地方。
机器A的 acme\1.0.0-SNAPSHOT\maven-metadata-nexus.xml:
<metadata>
<groupId>acme</groupId>
<artifactId>acme</artifactId>
<version>1.0.0-SNAPSHOT</version>
<versioning>
<snapshot>
<buildNumber>1</buildNumber>
</snapshot>
<lastUpdated>20100525173546</lastUpdated>
</versioning>
</metadata>
机器B的 acme\1.0.0-SNAPSHOT\maven-metadata-nexus.xml:
<metadata>
<groupId>acme</groupId>
<artifactId>acme</artifactId>
<version>1.0.0-SNAPSHOT</version>
<versioning>
<snapshot>
<buildNumber>2</buildNumber>
</snapshot>
<lastUpdated>20100519232317</lastUpdated>
</versioning>
</metadata>
在 Nexus 的 acme/1.0.0-SNAPSHOT/maven-metadata.xml 中:
<metadata>
<groupId>acme</groupId>
<artifactId>acme</artifactId>
<version>1.0.0-SNAPSHOT</version>
<versioning />
</metadata>
如果我正确解释元数据文件(在线文档很少),则机器 B 似乎认为它具有较新版本的 acme 依赖项(基于buildNumber),尽管机器 A 最后一次构建它是在机器 B 构建之后 6 天(基于时间戳)。 Nexus 似乎也不知道普遍正确的 buildNumber。
怎么可能出现这种情况?我可以采取什么措施来防止我的构建因元数据不一致而失败?你有过类似的经历吗?
重要说明:
最佳答案
看起来您从 Nexus 发布了错误的 maven-metadata,这看起来像是 acme 文件夹中的元数据,而不是 acme/1.0-SNAPSHOT 文件夹中的元数据。 (其中会有内部版本号和时间戳)。
无论如何,您是否尝试过将 -U 添加到 Maven 构建命令中?您可能偶然发现了一些关于始终设置的 Maven 错误,但我确信 -U 有效。
关于maven-2 - maven 的 buildNumber 元数据如何在多个构建代理之间变得不一致?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2916426/
我正在尝试使用 buildnumber-maven-plugin将 SCM 内部版本号附加到 WAR Artifact 名称,然后使用 tomcat7-maven-plugin部署它,但在不包含内部版
在我的父 pom 中我有 org.codehaus.mojo buildnumber-maven-plugin 1.1
我正在尝试获取 list 中的 mercurial 修订号。我已阅读以下说明: http://maven.apache.org/plugin-developers/cookbook/add-svn-r
我有一些存储在 TFS 下的嵌入式 C 软件,还有一个相应的 TFS 构建定义,它成功地 check out 代码并使用相关编译器构建它。所以要明确一点,虽然这是 TFS,但我不是在构建 .NET 应
我使用 maven-buildnumber-plugin 为 JAR/WAR/EAR 包生成我的版本号。因此,在进行编译时,我会得到例如 ${project.version}-${buildNumbe
我想从 PowerShell 脚本更新 Build.BuildNumber 变量作为构建步骤。 我试过了: Write-Host "##vso[task.setvariable variable=BU
我想知道是否有一种方法可以在不使用 BuildNumberOverrideTarget 的情况下同步内部版本号 (20080213.1),而我必须在其中生成自己的内部版本号?我基本上想使用默认/内置的
我的问候! 我已经编写了大量的文档,但我仍然遇到同样的错误:(我使用 Buildnumber maven 插件来获取 svn 版本,但它始终返回 null。 这是 pom:
我有以下配置来创建内部版本号并将其保存在 MANIFEST.MF 中。构建过程生成一个 buildNumber.properties 并从中跟踪最后一次构建。然而,我认为这个文件应该作为存储 buil
Maven Buildnumber 插件似乎还不能与 GIT 一起使用。暂时有解决方法吗?我最近从 SVN 切换到 GIT,发现它很容易过渡,但这是我目前唯一没有做的事情。 沃尔特 最佳答案 我使用这
无论我做什么,我都无法在项目的最终名称中获取 buildNumber :(请求Maven高手看看并提出一些解决方案。 这是我的 pom.xml 4.0.0 in.techieme.springmav
我们最近在构建环境中添加了第二台构建机器,并开始遇到非常奇怪的偶尔构建失败。 我有两台独立的 Maven 构建机器,A 和 B,每台都运行 Maven 2.2.1 并与共享的 Nexus 1.5.0
无论我做什么,我都无法在项目的最终名称中获得 buildNumber :(请Maven高手帮忙看看并提出解决方案。 这是我的 pom.xml 4.0.0 in.techieme.springmave
我正在使用 maven-buildnumber-plugin版本 1.0-beta-4。这在从 Subversion checkout 的项目上工作正常,但在 Jenkins 中失败。 我认为这个问题
在使用 maven-buildnumber-plugin 1.0 beta 4 时,似乎我可以获得 svn 修订版,除非我使用 配置中的标记。一旦我使用 和 buildnumber标签,我得到一个自动
在我的构建管道中,我正在执行以下操作: 从 Git 恢复 Powershell 脚本 - 检索构建 编号并将其写入 json 文件之前.... 构建解决方案 存档文件 发布工件。 在第 2 步中,Po
我正在尝试将 svn.revision 作为内部版本号添加到项目版本中,但似乎无法这样做。我的 jar 在打包期间具有正确的名称,但它安装在我的本地存储库中,就好像在设置版本时 ${buildNumb
我正在使用 buildnumber-maven-plugin 为我的 jar 生成序列号。我将在 CICD 过程中使用它。 我遵循了网上提供的所有示例。但是,我可以获取 ${buildNumber}
我一直在寻找一种方法来将 buildDate 和 buildNumber 添加到我的项目(我发现了),但我有点困惑,大多数人建议将属性添加到 info.plist 调用CFBuildDate 和 CF
我需要创建几个构建定义,它们都将执行完全相同的步骤。什么变化只是触发器和一些参数,基本上。因此,我将它们全部基于一个模板来完成所有繁重的工作。这很好用。 但是,我需要自定义 $(Build.Build
我是一名优秀的程序员,十分优秀!