尝试使用rspec,但是得到了一个错误,即rspec-core 2.2.1已被激活,但是我的Gemfile需要rspec-core 2.1.0

use*_*413 11 rubygems rspec ruby-on-rails

我更新了我的宝石.我已经创建了一个示例Rails应用程序并在我的Gemfile中有以下内容:

source 'http://rubygems.org'

gem 'rails', '3.0.3'
gem 'sqlite3-ruby', :require => 'sqlite3'

group :development do
  gem 'rspec-rails'
end

group :test do
  gem 'rspec'
  gem 'webrat', '0.7.1'
end
Run Code Online (Sandbox Code Playgroud)

但是,当我运行'rspec spec /'时,我收到以下消息:

/home/jeff/.rvm/gems/ruby-1.9.2-p0/gems/bundler-1.0.7/lib/bundler/runtime.rb:27:in `block in setup': 
You have already activated rspec-core 2.2.1, but your Gemfile requires rspec-core 2.1.0. 
Consider using bundle exec. (Gem::LoadError)
Run Code Online (Sandbox Code Playgroud)

Sam*_*hie 9

尝试使用bundle update rspecbundle update rspec-rails.你的Gemfile.lock文件,位于根目录下,可能是确定各宝石版本号.


Tyl*_*ler 7

Sam Ritchie和Alexey的解决方案相结合,帮助了我.最后我不得不:

bundle update rspec
bundle update rspec-rails
sudo gem uninstall rspec-mocks
sudo gem uninstall rspec-expectations
sudo gem uninstall rspec-core
Run Code Online (Sandbox Code Playgroud)

(如果没有输入,则提示输入版本)

正如Alexey所说,使用它来查看哪些版本太高:

gem list rspec
Run Code Online (Sandbox Code Playgroud)

(会投票给你Alexey,但显然我在筹码上没有足够的"声望".)