Java 如何获得';正在进行';Jenkins队列中的项目

Java 如何获得';正在进行';Jenkins队列中的项目,java,jenkins,plugins,Java,Jenkins,Plugins,我正在开发一个插件,我需要知道一个作业是挂起的还是正在进行中,调试时我看到有一个'inProgress'列表,我似乎无法从java访问它。我如何访问它? 我发现唯一可能相关的方法是jenkins.getQueue().isPending()但这不会返回此列表中的项目 谢谢如果队列中的作业处于挂起状态,您可以通过执行以下脚本获取信息: Jenkins.instance.queue.items.each { println it.isPending() } 它是用Groovy编写的,我从

我正在开发一个插件,我需要知道一个作业是挂起的还是正在进行中,调试时我看到有一个'inProgress'列表,我似乎无法从java访问它。我如何访问它?

我发现唯一可能相关的方法是jenkins.getQueue().isPending()但这不会返回此列表中的项目


谢谢

如果队列中的作业处于挂起状态,您可以通过执行以下脚本获取信息:

Jenkins.instance.queue.items.each {
    println it.isPending()
}

它是用Groovy编写的,我从Jenkins脚本控制台执行。基本上,
getQueue()
返回一个您应该迭代的列表。

如果队列中的作业处于挂起状态,您可以通过执行以下脚本获取信息:

Jenkins.instance.queue.items.each {
    println it.isPending()
}

它是用Groovy编写的,我从Jenkins脚本控制台执行。基本上,
getQueue()
返回一个您应该迭代的列表。

所以经过大量研究,我发现这是一种不受支持的行为。
作为一种变通方法,我最终在执行器上做了一个循环(使用computer->getExecutors)并询问他们(使用getCurrentExecutable->getParent)他们的父任务是什么

经过大量研究,我发现这是一种不受支持的行为。
作为一种变通方法,我最终在执行器上做了一个循环(使用computer->getExecutors)并询问他们(使用getCurrentExecutable->getParent)他们的父任务是什么

谢谢,但是挂起列表是空的(你可以在我发布的图片中看到这一点,仅比所选位置高出几位),经过一些调试后,我看到作业到达那里,然后在构建启动后立即离开,这是当作业进入/保持此“当前构建”状态时我想要的信息谢谢,但是挂起列表是空的(你可以在我发布的图片中看到这一点,只比所选位置高出几个位置),经过一些调试后,我看到作业到达那里,然后在构建启动后立即离开,这是当作业进入/保持此“当前构建”状态时我想要的信息