升级rubygems后的rvm和rubygems问题
我使用以下命令更新了ruby gems:升级rubygems后的rvm和rubygems问题,ruby,rubygems,rvm,Ruby,Rubygems,Rvm,我使用以下命令更新了ruby gems: gem update --system 现在,当运行bundle install或任何其他gem命令(如gem-v /Users/darrenburgess/.rvm/rubies/ruby-2.0.0-p648/lib/ruby/site_ruby/2.0.0/rubygems/specification.rb:17:in `require': cannot load such file -- stringio (LoadError) 我可以使用r
gem update --system
现在,当运行bundle install
或任何其他gem命令(如gem-v
/Users/darrenburgess/.rvm/rubies/ruby-2.0.0-p648/lib/ruby/site_ruby/2.0.0/rubygems/specification.rb:17:in `require': cannot load such file -- stringio (LoadError)
我可以使用rvm use system
切换到系统ruby,然后gem
命令似乎可以工作,但是当我运行rvm use 2.0.0
时,我会遇到相同的错误,即使rvm list
的输出显示=*ruby-2.0.0-p648[x86_64]
为当前和默认值。请注意,我可以切换到其他已安装的ruby版本,如2.4.1
和2.1.2
使用system ruby时,gem
的版本为2.0.14.1
安装的RVM版本为1.29.2(当前最新版本)
which-a ruby的输出
/Users/darrenburgess/.rvm/rubies/ruby-2.0.0-p648/bin/ruby
/usr/bin/ruby
/Users/darrenburges/.rbenv/shimmes/ruby
根据其他类似问题,我检查以确保RVM目录位于$PATH变量中的第一个。此路径位于第一行:
/Users/darrenburgess/.rvm/gems/ruby-2.0.0-p648/bin
不幸的是,我深深地陷入了的危险领域。我相信可能发生的事情是,我已经在我安装的ruby/rubygems/rvm版本之间引入了不兼容
在这一点上,我需要不同途径的帮助来探索。多谢各位
更新:
我已经按照rvm列表安装了3个版本的Ruby 2.0.0
ruby-2.0.0-p481 [ x86_64 ]
=* ruby-2.0.0-p643 [ x86_64 ]
ruby-2.0.0-p648 [ x86_64 ]
我只是简单地改用了p643
,这就解决了这个问题,因为我没有使用ruby==ruby-2.0.0-p648
所以我想现在我已经避开了这个问题,现在的问题是ruby-2.0.0-p648有什么问题,如何解决
更多信息:
ruby-2.0.0-p643
正在使用gem
版本2.4.6
ruby-2.0.0-p481
正在使用gem
版本2.2.2
rubygems的最新版本是2.6.12
因此,我怀疑我将rubygems升级到了与ruby 2.0.0不兼容的版本。我确实解决了这个问题,但我仍然不确定升级rubygems导致这些问题的原因
解决方案是:
rvm remove ruby-2.0.0-p648
rvm install ruby-2.0.0-p648
gem install bundler
bundle install
因此,删除ruby版本似乎会删除所有已安装的gems,可能还会删除我安装的rubygems的不兼容版本。重新安装ruby 2.0.0p648解决了该问题