我更新了Ruby。当我在CLI中请求Ruby版本时,它可以工作,但是当我请求Gem版本时,它会返回以下错误:
C:/Ruby23/lib/ruby/2.3.0/rubygems/config_file.rb:90:在`join'中:没有将nil隐式转换为String(TypeError)
在Windows上的便携版本以及已安装的版本上都会发现错误。
我不知道如何运行Ruby的工作版本。有没有人已经有这个错误或有解决这个问题的线索?
答案 0 :(得分:1)
您需要以某种方式设置环境变量SYSTEM_CONFIG_PATH
以下是90
的行rubygems/config_file.rb
:
SYSTEM_WIDE_CONFIG_FILE = File.join SYSTEM_CONFIG_PATH, 'gemrc'
SYSTEM_CONFIG_PATH
为零时失败。
答案 1 :(得分:0)
搜索确切的错误消息“没有将nil隐式转换为字符串”,我终于找到了一个有效的解决方案(可能不是最好的)。
我更换了第90行:
SYSTEM_WIDE_CONFIG_FILE = File.join SYSTEM_CONFIG_PATH,'gemrc'
使用:
SYSTEM_WIDE_CONFIG_FILE = File.join SYSTEM_CONFIG_PATH.to_s,'gemrc'