rcov "stack level too deep" 问题的解决

本文介绍了解决在使用rcov时遇到的Stack level too deep错误的方法。通过修改rexml/formatters/pretty.rb文件并在不同Ruby版本及操作系统上验证其有效性。提供了一个特定版本的rcov作为替代方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

rcov 引起的 rexml/formatters/pretty.rb raise "stack level too deep" 这个问题google已有不少资料,初步的解决方案就是rexml/formatters/pretty.rb 130行改为
place = string.rindex(' ', width) || width 或者
place = string.rindex(' ', width)
return string if place.nil?
这个在我的开发环境Ubuntu下是没问题了,但是我的cruisecontrolrb跑在gentoo上,其他ruby版本,程序都一样,还是老问题,最好还是google有解决方案,到[url]https://launchpad.net/ubuntu/intrepid/+source/rcov/0.8.1.2-2[/url],下载这个rcov版本,把lib/rcov/report.rb这个问题替换一下就可以了,注意里面的ruby版本限定的是1.8.6,有需要就要改成你的版本

cruisecontrolrb集成rcov在task里面加上这句就可以了,很方面看报告

t.rcov_dir = ENV['CC_BUILD_ARTIFACTS'] ? ENV['CC_BUILD_ARTIFACTS'] + '/coverage' : 'coverage'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值