Maven并发构建在CI服务器上

时间:2013-05-15 13:13:13

标签: java maven jenkins

在我看来,我有一个有趣的案例。我们正在使用maven,并且由于我们必须支持我们产品的多个版本,因此我们有时会使用1.x和2.x构建结构。当1.x和2.x并行构建时,有时我们会看到

安装工件元数据时出错:安装元数据时出错:更新组存储库元数据时出错

据我所知,本地用户的repo中的maven-metadata-local.xml(对于工件,而不是工件的版本)正由另一个maven进程同时写入。有没有办法允许maven并行构建这两个,但是等待文件的写锁定来更新它?

2 个答案:

答案 0 :(得分:4)

听起来您正在为所有构建作业使用相同的本地存储库,这些作业将无法正常工作。 Jenkins / Hudson / CI中的要点是为每个构建作业使用本地maven存储库。您需要使用本地maven存储库在Jenkins中进行配置,以避免出现这种情况。

您还可以安装Concurrent Safe Local Repository Access maven插件,这将允许您使用相同的本地存储库。 (如果您动态配置代理,则非常有用)

答案 1 :(得分:1)

使用Maven设置下的第二个或第三个选项(管理员/配置): enter image description here

这些选项来自:Maven Project Plugin