所以我刚刚安装了rvm,并且让它工作得很漂亮。我之前运行的是ruby 1.8.7,它阻止了我的几个rspec测试通过。
现在我已经安装了rvm并正常工作,我的rspec无效。我知道我安装了rspec gem。但现在运行rake
命令时,运行ruby 1.9.2时会出现此错误:
(in /Users/TheRedFool/learn_ruby-master)
rake aborted!
Could not find rspec (~> 2) amongst [bundler-1.3.2, minitest-1.6.0, rake-10.0.3, rake-0.8.7, rdoc-2.5.8, rubygems-bundler-1.1.1, rvm-1.11.3.6]
/Users/TheRedFool/learn_ruby-master/Rakefile:2:in `<top (required)>'
/Users/TheRedFool/.rvm/gems/ruby-1.9.2-p320@global/bin/ruby_noexec_wrapper:14:in `eval'
/Users/TheRedFool/.rvm/gems/ruby-1.9.2-p320@global/bin/ruby_noexec_wrapper:14:in `<main>'
在运行ruby 2.0.0时使用rake
命令时出现此错误:
(in /Users/TheRedFool/learn_ruby-master)
rake aborted!
Could not find 'rspec' (~> 2) among 8 total gem(s)
/Users/TheRedFool/learn_ruby-master/Rakefile:2:in `<top (required)>'
这让我有点疯狂,所以提前感谢你的帮助。
答案 0 :(得分:3)
每当您使用rvm
并安装新的ruby版本时,您必须在gemset
或默认gemset中安装一组新的宝石。它们不会传递版本,特别是那些没有安装rvm的版本。您可以通过运行
gem list | grep rspec
另外,请注意,如果您的项目有Gemfile,您可以运行bundle install
进行安装,以确保所有宝石都安装在它们所属的位置。