2015-10-15 29 views
0

我们需要为基于Maven的项目设置Jenkins构建任务。我已经在我们的詹金斯中心创建了这样的任务,并且它成功运行。Jenkins构建失败,出现“Non-resolvable parent POM”

现在,我需要对构建基础结构进行一些认真的重构,为了做到这一点,我需要对Jenkins进行试验。我不想超载我们的中央詹金斯,所以我已经在我的机器上本地安装了詹金斯。它与中央詹金斯 - 1.617版本相同。不同之处在于中央Jenkins运行在Linux机器上,而且我有Windows 8.我已经设置了我的本地Jenkins以使用相同的Maven安装(v.3.2.5),我用它来运行本地Maven构建控制台。

问题是构建不通过。我遇到以下错误:

[致命]不可解析的父POM:无法找到工件aaa.ssdd:ssdd-parent:pom:1.0-SNAPSHOT和'parent.relativePath'指向错误的本地POM @第10行

I-net上的所有帖子都表明我明确指出了父亲的相对路径,我不想这样做,因为pom.xml文件没问题(记住 - 构建完毕)即使我改变了pom.xmls并解决了这些错误,我也遇到了另一种情况:

错误:由于代码中的错误导致处理失败。请报告给[email protected] java.lang.IllegalStateException:C:\ Program Files(x86)\ Jenkins \ jobs \ SSDD \ modules \ aaa.ssdd $ SSDD \ builds \ 53已经存在;将不会用SSDD/aaa.ssdd覆盖:SSDD#53 at hudson.model.RunMap.put(RunMap.java:189) at jenkins.model.lazy.LazyBuildMixIn.newBuild(LazyBuildMixIn.java:178) at hudson .model.AbstractProject.newBuild(AbstractProject.java:1017) 在hudson.maven.MavenModule.newBuild(MavenModule.java:392) 在hudson.maven.MavenModuleSetBuild $ MavenModuleSetBuildExecution.doRun(MavenModuleSetBuild.java:700) 在哈德逊.model.AbstractBuild $ AbstractBuildExecution.run(AbstractBuild.java:537) 在hudson.model.Run.execute(Run.java:1744) 在hudson.maven.MavenModuleSetBuild.run(MavenModuleSetBuild.java:531) 在哈德逊.model.ResourceController.execute(ResourceController.java:98) at hudson.model。 Executor.run(Executor.java:374)

就像我说的 - 没有一个发生在中央詹金斯身上。为什么它与中央建筑的表现如此不同? Windows有可能导致问题吗?

有没有人有线索,最终的原因是什么以及如何解决错误而无需更改pom.xml文件?

回答

0

它似乎是与平台无关的问题 - 在Mac OS上它会产生相同的错误。

解决方案是降级到旧版本的Jenkins - 1.575。似乎如果,在那之后,詹金斯升级到v.1.6xx,它工作正常。这就是为什么它适用于我们的中央Jenkins,这是v.1.617。目前,我打算坚持v.1.575。使用Maven v.3.1.1和v.3.2.5对它进行测试 - 工作正常。