我正在尝试配置我的Jenkins项目以显示JUnit XML报告的结果。但是,在构建期间尝试显示JUnit XML时,Jenkins项目会抛出以下错误。
Recording test results
ERROR: Publisher hudson.tasks.junit.JUnitResultArchiver aborted due to exception
java.lang.NoClassDefFoundError: hudson/tasks/junit/JUnitParser$ParseResultCallable
at hudson.tasks.junit.JUnitParser.parseResult(JUnitParser.java:90)
at hudson.tasks.junit.JUnitResultArchiver.parse(JUnitResultArchiver.java:120)
at hudson.tasks.junit.JUnitResultArchiver.perform(JUnitResultArchiver.java:137)
at hudson.tasks.BuildStepCompatibilityLayer.perform(BuildStepCompatibilityLayer.java:74)
at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:770)
at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:734)
at hudson.model.Build$BuildExecution.post2(Build.java:183)
at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:683)
at hudson.model.Run.execute(Run.java:1765)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:89)
at hudson.model.Executor.run(Executor.java:240)
Finished: FAILURE
我已经读过这个错误可能是由于Jenkins期望的JUnit版本与我的项目使用的版本不匹配。如何找出JUnit Jenkins的版本?另外,还有什么可能导致上述错误吗?
答案 0 :(得分:0)
JUnitResultArchiver
引发错误。它是Junit插件的依赖项。进入Jenkins并查找JUnit Plugin
的版本。然后在项目的github上查看该特定版本的源代码:https://github.com/jenkinsci/junit-plugin
完成此操作后,您将拥有所需的确切版本。
您看到此错误的另一个原因是您有不同的编译和运行时类路径。