Jenkins多配置项目在构建步骤中没有显示自定义插件?

时间:2014-06-25 11:02:03

标签: jenkins

我为Jenkins编写了一个自定义插件,它就像一个带有自由风格项目的魅力。但是,当我创建一个新的多配置项目时,插件不再存在于"构建步骤组合框#34;中。

任何人都有这方面的经验吗?是否有任何要求插件与多配置项目兼容?

看起来有点像: https://issues.jenkins-ci.org/browse/JENKINS-12036

1 个答案:

答案 0 :(得分:3)

您是否尝试过关注this note

  

缺少构建器   如果您无法在条件构建步骤中添加所选的构建器(因为它在下拉列表中不可用),那么很可能是因为构建器未提供@DataBoundConstructor构造函数和/或者描述符不扩展hudson.tasks.BuildStepDescriptor。对于非程序员:您想要使用的插件尚未遵循最新的Jenkins编码指南。如果没有这个,条件buildstep插件将无法使用它。

如果您已获得描述符,请检查this

  

在我们为Builder编写描述符时,为方便起见,我们扩展了BuildStepDecriptor。然后我们必须实现两种方法:     isApplicable 将用于询问描述符当前项目是否可以使用它管理的组件。 您可能希望您的插件仅适用于FreeStyle项目,但不适用于Maven或Matrix项目
    getDisplayName 允许我们在用户配置作业时声明构建步骤选择框中使用的标签。请记住,当我们谈论国际化时,

因此,您的描述符应该看起来像

@Extension
public static class Descriptor extends BuildStepDescriptor<Builder> {

    @Override
    public boolean isApplicable(Class<? extends AbstractProject> jobType) {
        return hudson.model.FreeStyleProject.class.isAssignableFrom(jobType)
            || hudson.matrix.MatrixProject.class.isAssignableFrom(jobType);
    }

例如,请参阅thisthis one