You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins Plot插件绘制Lizard代码复杂度图表为空无报错如何解决

问题根因

你当前配置的XPath仅定位到了<average>节点本身,但目标数值存储在节点的value属性中,而非节点的文本内容,Plot插件无法直接从节点对象提取到数值,因此图表无数据。

修复步骤

1. 调整XPath指向属性值

在原有XPath末尾添加/@value提取value属性值,同时建议使用@type属性定位<measure>节点,比下标索引兼容性更强,避免后续XML结构调整导致定位失效。

2. 补充数据序列名称

为每个数据序列添加name字段,明确指标含义,同时保证CSV生成的列名符合要求。

3. 明确数值类型

将nodeType设置为NUMBER,避免类型转换异常。

修复后完整配置参考

plot csvFileName: 'plot-lizard-code-complexity.csv', group: 'Code Complexity', numBuilds: '20', style: 'line', 
          title: 'Code Complexity', 
          xmlSeries: [
             [file: 'lizard_report.xml', nodeType: 'NUMBER', url: '', xpath: '/cppncss/measure[@type="File"]/average[@label="NCSS"]/@value', name: '单文件平均NCSS'], 
             [file: 'lizard_report.xml', nodeType: 'NUMBER', url: '', xpath: '/cppncss/measure[@type="File"]/average[@label="CCN"]/@value', name: '单文件平均CCN'], 
             [file: 'lizard_report.xml', nodeType: 'NUMBER', url: '', xpath: '/cppncss/measure[@type="File"]/average[@label="Functions"]/@value', name: '单文件平均函数数'], 
             [file: 'lizard_report.xml', nodeType: 'NUMBER', url: '', xpath: '/cppncss/measure[@type="Function"]/average[@label="NCSS"]/@value', name: '单函数平均NCSS'], 
             [file: 'lizard_report.xml', nodeType: 'NUMBER', url: '', xpath: '/cppncss/measure[@type="Function"]/average[@label="CCN"]/@value', name: '单函数平均CCN']
             ], 
             yaxis: 'Complexity'

验证方法

修改配置执行构建后,可进入对应构建号的工作目录,找到生成的plot-lizard-code-complexity.csv文件,检查文件内是否已写入对应数值,确认数据正常后刷新Plot图表即可看到趋势。

内容的提问来源于stack exchange,提问作者Michael

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 00:36:03