例如,
$ 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 异常不断出现。我用谷歌搜索并搜索了 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
关于ruby - 安装新 Ruby gem 时 RDoc::TopLevel:Class 的未定义方法 `reset',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38988161/