一些插件阻止Jenkins邮件工作

时间:2014-08-20 17:58:42

标签: jenkins jenkins-plugins

我最近将jenkins更新为版本1.576以及所有插件。这个版本有问题。还有其他构建似乎工作正常。我正在试图弄清楚如何进一步调试这个。我可以成功发送测试消息。这一切都在CentOS服务器上运行。

在Web服务器的控制台中报告:

[Cobertura] Publishing Cobertura coverage report...
Publishing Cobertura coverage results...
Cobertura coverage report found.
Recording test results
ERROR: Publisher hudson.tasks.Mailer aborted due to exception
java.lang.NullPointerException
Finished: FAILURE

在服务器上的jenkins.log中:

INFO: omicia_webapp_dev #1240 main build action completed: SUCCESS 

Aug 20, 2014 10:50:32 AM hudson.model.AbstractBuild$AbstractBuildExecution reportError 

WARNING: Publisher hudson.tasks.Mailer aborted due to exception java.lang.NullPointerException 

Aug 20, 2014 10:50:32 AM jenkins.model.lazy.LazyBuildMixIn removeRun 

WARNING: hudson.model.FreeStyleProject@1943b93b[omicia_webapp_dev] did not contain omicia_webapp_dev #1237 to begin with

完全禁用电子邮件让我在控制台日志中看到此错误:

Publishing Cobertura coverage results...
Cobertura coverage report found.
Recording test results
FATAL: null
java.lang.NullPointerException

让我相信它并不像邮件问题那么简单。

禁用电子邮件和cobertura代码覆盖率插件似乎解决了这个问题。现在重新打开电子邮件......

更新了一些杂散插件后,我得到了一个稍微不同的错误,有一个stracktrace ......

  

记录测试结果FATAL:null java.lang.NullPointerException at   java.lang.String中$ CaseInsensitiveComparator.compare(String.java:1227)     在   java.lang.String中$ CaseInsensitiveComparator.compare(String.java:1220)     在java.lang.String.compareToIgnoreCase(String.java:1270)at   hudson.util.CaseInsensitiveComparator.compare(CaseInsensitiveComparator.java:40)     在   hudson.util.CaseInsensitiveComparator.compare(CaseInsensitiveComparator.java:34)     在   jenkins.model.IdStrategy $ CaseInsensitive.compare(IdStrategy.java:160)     在jenkins.model.IdStrategy.equals(IdStrategy.java:78)at   hudson.model.User.getOrCreate(User.java:393)at   hudson.model.User.getAll(User.java:475)at   hudson.model.User $ FullNameIdResolver.resolveCanonicalId(User.java:903)     在hudson.model.User.get(User.java:358)at   hudson.model.User.get(User.java:331)at   hudson.plugins.git.GitChangeSet.findOrCreateUser(GitChangeSet.java:251)     在hudson.plugins.git.GitChangeSet.getAuthor(GitChangeSet.java:326)     在hudson.model.AbstractBuild.getCulprits(AbstractBuild.java:352)at   hudson.model.AbstractBuild.getCulprits(AbstractBuild.java:348)at at   hudson.model.AbstractBuild $ AbstractBuildExecution.post(AbstractBuild.java:689)     在hudson.model.Run.execute(Run.java:1765)at   hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)at at   hudson.model.ResourceController.execute(ResourceController.java:88)     在hudson.model.Executor.run(Executor.java:233)

删除构建步骤,所有这些步骤,重新运行构建,然后重新添加它们都不起作用。即使没有构建步骤,也可以重现空指针异常。

1 个答案:

答案 0 :(得分:2)

我从未能解决这个问题。我在一台新服务器上重新安装了Jenkins,并从头开始。这似乎解决了这个问题。

它看起来好像与插件有关。

基于1.577版本更新日志,它似乎是Jenkins中的一个错误:

What's new in 1.577 (2014/08/24)
Failure to migrate legacy user records in 1.576 properly broke Jenkins, 
resulted in NullPointerExceptions.  (issue 24317)
Prevent NullPointerException from Executor.run. (issue 24110)