3

我在使用 Hudson 和 Maven 生成 Cobertura 报告时遇到问题,我希望这里的某个人可能有解决方案。

我可以看到当 hudson 构建我的项目时会生成 cobertura 工件。但是当我配置我的 hudson 项目以发布 Cobertura 覆盖率报告时,我看到构建失败并出现以下错误:

Publishing Cobertura coverage report ...
Publishing Cobertura coverage results ...
FATAL: org/jfree/chart/axis/CategoryAxis
java.lang.NoClassDefFoundError: org/jfree/chart/axis/CategoryAxis
  at hudson.plugins.cobertura.CoberturaXmlHandler.startDocument(...)

构建输出显示 Java 版本为 1.6.0_38

如果我配置我的项目以便不生成 Cobertura 覆盖率报告,则构建成功。

以下插件安装在 hudson 上:

  • Findbugs(版本 4.41-h-2)
  • Checkstyle(版本 3.28-h-1)
  • Cobertura(版本 1-6-h-1)
  • 静态分析收集器(版本 1.28-h-1)
  • 静态分析实用程序(版本 1.42-h-1)
  • Maven 3 构建(版本 3.0.0)

使用以下 maven 命令:

  • 全新安装 findbugs:findbugs checkstyle:checkstyle cobertura:cobertura

有关如何解决此问题的任何建议?

4

1 回答 1

1

您还需要安装JFreeChart 插件,它是在 cobertura 中生成图表所必需的(这就是为什么该类在运行 cobertura 时未发现异常的原因),但它已从 主要的 hudson 发行版中删除:

(JFreeChart ...) 移至外部插件。可从 Alpha 版本获得。任何使用 JFreechart 的外部插件都需要添加对此外部插件的依赖以保持兼容性。对于未来的图表需求,BIRT Charts 现在捆绑为核心插件

编辑:在这里看到的传递依赖中有一个错误。安装 cobertura-plugin 版本 1.6-h-3。mvn

于 2013-02-19T03:36:29.620 回答