【问题标题】:Error in sending mail using Email-Ext plugin jenkins使用 Email-Ext 插件 jenkins 发送邮件时出错
【发布时间】:2026-02-15 18:30:01
【问题描述】:

我的詹金斯版本是詹金斯版本。 1.642.4 & Token Macro 版本为 1.12。当我尝试设置 Email-ext 插件时,由于以下错误,邮件发送失败。

ERROR: Step ‘Editable Email Notification’ aborted due to exception: 
java.lang.NoSuchMethodError: org.jenkinsci.plugins.tokenmacro.TokenMacro.expandAll(Lhudson/model/Run;Lhudson/FilePath;Lhudson/model/TaskListener;Ljava/lang/String;ZLjava/util/List;)Ljava/lang/String;
    at hudson.plugins.emailext.plugins.ContentBuilder.transformText(ContentBuilder.java:80)
    at hudson.plugins.emailext.ExtendedEmailPublisher.setSubject(ExtendedEmailPublisher.java:706)
    at hudson.plugins.emailext.ExtendedEmailPublisher.createMail(ExtendedEmailPublisher.java:595)

谁能告诉我如何解决这个错误?

【问题讨论】:

    标签: email jenkins jenkins-plugins email-notifications jenkins-email-ext


    【解决方案1】:

    这是因为 Email-Ext 插件与 FindBugs 1.6 版不兼容。这在更新到 Jenkins 2.19 LTS 后得到了修复

    【讨论】:

      【解决方案2】:

      在 Jenkins LTS 1.625.3 中安装最新的 Email Extension Plugin (2.57.1​​) 时,其依赖项 Token Macro Plugin 安装在版本 1.12.1 中。

      但电子邮件扩展版本 2.57.1​​ 需要 2.0 版本中的令牌宏并且失败。由于 Token Macro 被大量插件使用,我决定保留 1.12.1。

      因此,我手动安装了Email Extension 2.47(管道支持和 Jenkins 2 之前的 2016 年 8 月),它与 Token Macro 1.12.1 配合良好,希望不会影响任何其他插件。这样做,必须在 Jenkins 更新中心的“高级”部分手动上传 hpi 文件。

      【讨论】:

      • 降级后没有帮助...java.lang.NoSuchMethodError: hudson.plugins.emailext.ExtendedEmailPublisherDescriptor.createSession()Ljavax/mail/Session; at org.jenkinsci.plugins.jobmail.actions.JobMailProjectAction.createMimeMessage(JobMailProjectAction.java:352) at org.jenkinsci.plugins.jobmail.actions.JobMailProjectAction.createMessage(JobMailProjectAction.java:287)