Jenkins没有将buildInfo属性文件传递给gradle

Jenkins没有将buildInfo属性文件传递给gradle,jenkins,gradle,artifactory,Jenkins,Gradle,Artifactory,今天早上,我们所有的Jenkins构建都在artifactoryPublish任务期间失败,消息如下: Execution failed for task ':artifactoryPublish'. > Context URL cannot be empty 我重建的任何项目都会发生这种情况,即使是几个月没有改变的项目 当我比较成功构建和失败构建之间的控制台日志时,弹出的一项是成功构建中的一行: [buildinfo] Properties file found at '/tmp/bu

今天早上,我们所有的Jenkins构建都在
artifactoryPublish
任务期间失败,消息如下:

Execution failed for task ':artifactoryPublish'.
> Context URL cannot be empty
我重建的任何项目都会发生这种情况,即使是几个月没有改变的项目

当我比较成功构建和失败构建之间的控制台日志时,弹出的一项是成功构建中的一行:

[buildinfo] Properties file found at '/tmp/buildInfo4135847729346651998.properties'
这对于失败的生成不存在。My/tmp目录不包含失败生成的buildInfo*.properties文件,但从控制台输出来看,该文件似乎没有传递给Gradle。属性文件包含一个
contextUrl
属性,这使我相信构建中缺少的文件就是问题所在


有谁能给我一些启示,说明是什么改变了我的配置或环境导致了这种情况?

因此,在与似乎相同的问题搏斗了一段时间后,我发现禁用Gradle守护程序(使用--no守护程序)解决了我的问题


我还在插件JIRA系统上创建了一个问题,以弄清是否有必要禁用守护进程,并在收到答复时更新此答案。

我看到了实现新构建系统的完全相同的行为,但还无法找出原因。任何更新都将不胜感激。我必须在短期内转向其他方面,但计划很快回到这一点。我的安装落后了几个小版本,所以我要做的第一件事就是确保它和插件是最新的。不过,我不确定这会起什么作用,因为据我所知,工作和不工作之间没有任何变化。谢谢你的建议,@PinkyNoBrain。我回到办公室后再试试。您是否必须为每个作业关闭守护程序,或者它们是所有Gradle构建工作的中心位置?我意识到我可以在$HOME/.grade/Gradle.properties中设置
org.Gradle.daemon=false
。然而,真正奇怪的是,我决定在关闭守护进程之前重建我的项目,因为我已经有几天没有构建它们了。这一次,他们都成功地构建了,没有文件更改,我也没有明显的配置更改。@Jeff French是的,这实际上是有道理的。在没有构建的几天后,您的Gradle守护进程将过期。当新版本再次启动时,它将被赋予此新版本的属性,因此它们会成功。但是,一旦运行,它就不会传递后续生成的更新属性,因此它们会失败。这就是我从构建服务器上的行为推断出来的。谢谢你追踪到这一点,@PinkyNoBrain!