使用rvm,无论何时我尝试安装或更新gem(或rubygems),我都会得到同样的错误:
$ gem update --system
Updating rubygems-update
Fetching: rubygems-update-2.6.6.gem (100%)
ERROR: While executing gem ... (TypeError)
no implicit conversion of nil into String
我的系统ruby然而,工作正常。
答案 0 :(得分:13)
这是版本2.5.x的ruby gem安装程序中的错误。修补文件installer.rb(在我的机器上/usr/local/lib/ruby/2.3.0/rubygems/installer.rb中),如下所示:
替换:
if ruby_executable then
question << existing
使用:
if ruby_executable then
question << (existing || 'an unknown executable')
答案 1 :(得分:3)
sudo dnf -y remove ruby\*
sudo find /usr -name "*ruby*" -exec rm -fr {} \;
sudo dnf install -y ruby
sudo gem update --system
对我有用,可能是 rubygems 目录删除failed
PS:我在fedora
,但这应该适用于ubuntu
/ debian
,使用 apt-get 代替 dnf 强>
答案 2 :(得分:0)
手动设置版本:
gem update --system 2.6.6
答案 3 :(得分:0)
当我尝试安装xcodeproj时遇到了同样的问题。我无法使用gem update解决它(我得到了同样的错误)。
我通过将ruby从版本2.4.0升级到2.5.0_2
解决了这个问题#brew upgrade ruby
ruby upgrade gem从版本2.5.2更新到2.7.6版