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

Jenkins多配置项目没有';在构建步骤中不显示自定义插件?,jenkins,Jenkins,我已经为Jenkins编写了一个自定义插件,它就像一个带有自由风格项目的魅力。然而,当我创建一个新的多配置项目时,插件不再出现在“构建步骤组合框”中 有人有这方面的经验吗?插件是否需要与多配置项目兼容 看起来有点像: 你试过跟随吗 缺少生成器 如果无法在条件构建步骤中添加所选的构建器(因为它在下拉列表中不可用),则这可能是因为构建器未提供@DataBoundConstructor构造函数和/或描述符未扩展hudson.tasks.BuildStepDescriptor。对于非程序员:您想要使用的

我已经为Jenkins编写了一个自定义插件,它就像一个带有自由风格项目的魅力。然而,当我创建一个新的多配置项目时,插件不再出现在“构建步骤组合框”中

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

看起来有点像:

你试过跟随吗

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

如果您有描述符,请检查

在为构建器编写描述符时,为了方便起见,我们扩展了BuildStepDecriptor。然后,我们必须实施两种方法: isapplicate将用于询问描述符当前项目是否可以使用它管理的组件您可能希望插件只应用于自由式项目,而不应用于Maven或矩阵式项目
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);
    }
@扩展名
公共静态类描述符扩展了BuildStepDescriptor{
@凌驾

公共布尔值是适用的(类这是正确的答案!非常感谢!我忽略了注释。