例如,

$ gem install netaddr
Fetching: netaddr-1.5.1.gem (100%)
Successfully installed netaddr-1.5.1
ERROR:  While executing gem ... (NoMethodError)
    undefined method `reset' for RDoc::TopLevel:Class

当我安装任何新的gem时,都会继续引发NoMethodError异常。我在Google上搜索并搜索了RDoc和RubyGems GitHub存储库中的问题,但没有运气。

我的Ruby版本是
$ ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]

RubyGems版本是
$ gem -v
2.5.1

安装的RDoc版本是
$ gem search rdoc -l

*** LOCAL GEMS ***

rdoc (4.2.2, 4.2.1)

我在Mac OS X El Capitan上安装了带有RVM的Ruby。

谢谢!

[更新] 2018/08/03

我已经很长时间没有使用Macbook了,所以直到现在我都忘记了这个问题。前天我收到了答复通知,今天我用同一台Macbook检查了情况。我发现我不再遇到问题了,Ruby和Gems进行了如下更新:
$ gem install netaddr
Fetching: netaddr-2.0.3.gem (100%)
Successfully installed netaddr-2.0.3
Parsing documentation for netaddr-2.0.3
Installing ri documentation for netaddr-2.0.3
Done installing documentation for netaddr after 1 seconds
1 gem installed

$ ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin15]

$ gem -v
2.6.8

$ gem search rdoc -l

*** LOCAL GEMS ***

rdoc (default: 5.0.0)

我不记得我何时更新它们,但是问题仍然存在,我猜想这是一个错误并已在更新中修复。

谢谢。

最佳答案

安装rdoc时,它将尝试使用rdoc生成自己的文档。二进制文件已安装(可能在/usr/bin中),但是在gem安装时将找不到该二进制文件-如果这是第一次。gem install rdoc --no-document

10-08 06:39
查看更多