gpt4 book ai didi

java - 从嵌套 View 插件获取 Jenkins 中的 ListView

转载 作者:太空宇宙 更新时间:2023-11-04 13:38:57 24 4
gpt4 key购买 nike

我开发了一个插件,它的扩展点来自 ListViewColumn,但现在我在将它与另一个插件 Nested View Plugin 结合使用时遇到了问题。 .

我的插件使人们能够在当前 View 中选择作业并通过一键按下进行修改。但是,当 View 驻留在嵌套 View 内时,我无法找到该 View (从我的 java 代码和 jelly 脚本中),并且无法进行任何修改。在columnHeader.jelly中我执行

${it.getHeaderText(view.name)}

其中 getHeaderText() 定义为

public String getHeaderText(String viewName) {
Hudson.getInstance().getView(viewName);
// access all jobs from the return object of .getView(viewName)
return viewName;
}

这适用于常规 ListView ,但每当我进入嵌套 View 的 ListView 时,getView(viewName) 都会返回 null。

经过进一步调查,我注意到调用时会出现嵌套 View

Hudson.getInstance().getViews();

它仅返回整个 Jenkins 实例顶层的 View (嵌套 View 内没有 View )。这里我有一个嵌套 View ,它显示并且是 hudson.plugins.nested_view.NestedView 的实例。但我似乎无法对这个对象做任何事情。

因此我想知道如何从 Jenkins 实例获取所有 ListView ?

我相信我必须在我的 pom.xml 文件中定义一个依赖项

<dependencies>
<dependency>
<groupId>nested_view.plugins.hudson</groupId>
<artifactId>nested-view</artifactId>
<version>1.526</version>
<optional>true</optional>
</dependency>
</dependencies>

为了能够使用作为 hudson.plugins.nested_view.NestedView 实例的对象。但是当将此添加到我的 pom.xml 时,它似乎不起作用。将鼠标悬停在依赖项标记上方(上面代码块的第二行)我收到消息

Missing artifact hudson.plugins.nested_view:nested-view:jar:1.526

我宁愿找到一种通过核心方法和对象获取所有 View 的方法。但是,如果我必须添加依赖项才能获取嵌套 View 中的 ListView 和作业,我该如何让它工作?

<小时/>

旁注:

This issue是我想做的,但 getViews() 返回不包含 View 对象的 View 对象。另外,我想用java来做这个。但这对我根本没有帮助......

//博格

最佳答案

我找到了解决问题的方法!

由于我可以在不知道自己处于哪个 View 的情况下单独访问当前 View 中的所有职位,因此我可以将每个职位添加到后端的列表中,然后只需扫描 URL 以查看是否有人更改了 View (然后我会清除并再次重新添加职位)。

如果有人能回答如何访问其他插件的对象以及如何正确添加依赖项,我们将不胜感激。

干杯!

关于java - 从嵌套 View 插件获取 Jenkins 中的 ListView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31410181/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com