如何使用脚本侦听器插件设置Jira子任务的组件?

时间:2012-03-19 19:40:52

标签: groovy components jira

我正在使用Jira插件,groovyrunner,它有几个内置脚本。其中一个是脚本侦听器,当某个项目触发特定事件时,它会运行内置脚本。在这种情况下,脚本是“创建子任务”。选择一些设置和可能的约束后,您可以运行其他代码。我有它,所以在创建子任务时设置了受理人。现在我想要做的是为子任务设置组件。目前,它使用我不想要的父组件。

最初我试图使用:

issue.setComponentIds('idnum')

但现在我发现了这个:

setComponentObjects(Collection<ProjectComponent> components)

http://docs.atlassian.com/jira/latest/com/atlassian/jira/issue/MutableIssue.html

我在使用组件ID构建ProjectComponent并将其插入Collection时遇到了麻烦。

1 个答案:

答案 0 :(得分:0)

如果你唯一的问题是从你的id获取ProjectComponent对象而不是你的groovy脚本,你可以简单地得到它:

ProjectComponentManager pcm = ComponentAccessor.getProjectComponentManager();
ProjectComponent pc = pcm.find(long_id); 
List<ProjectComponent> list = new ArrayList<ProjectComponent>();
list.add(pc); 

或者,如果您在所选组件上有其他标识符或条件,则应进行检查 http://docs.atlassian.com/jira/5.1/com/atlassian/jira/bc/project/component/ProjectComponentManager.html 欲获得更多信息。