0

所以我刚刚安装了 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>'

rake在运行 ruby​​ 2.0.0时使用该命令时出现此错误:

(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)>'

这让我有点发疯,所以提前感谢您的帮助。

4

1 回答 1

3

每当您使用rvm和安装新的 ruby​​ 版本时,您必须在 agemset或默认 gemset 中安装一组新的 gem。它们不会传递版本,特别是那些没有安装 rvm 的版本。您可以通过运行检查是否安装了 gem

gem list | grep rspec

另外,请注意,如果您的项目有一个 Gemfile,您可以运行bundle installinstall 以确保所有 gem 都安装在它们所属的位置。

于 2013-03-09T19:42:32.980 回答