Пытаюсь использовать rspec, но получаю ошибку, что rspec-core 2.2.1 активирован, но мой Gemfile требует rspec-core 2.1.0 - PullRequest
11 голосов
/ 02 декабря 2010

Я обновил свои драгоценные камни. Я создал пример приложения 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

Однако, когда я запускаю '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)

Ответы [ 6 ]

9 голосов
/ 02 декабря 2010

попробуйте использовать bundle update rspec и bundle update rspec-rails.Ваш Gemfile.lock файл, расположенный в корневом каталоге, вероятно, указывает номер версии для каждого гема.

7 голосов
/ 13 декабря 2010

Комбинация решений Сэма Ричи и Алексея помогла мне здесь. В итоге мне пришлось:

bundle update rspec
bundle update rspec-rails
sudo gem uninstall rspec-mocks
sudo gem uninstall rspec-expectations
sudo gem uninstall rspec-core

(запрашивает версии, если они не введены)

Как говорит Алексей, используйте это, чтобы увидеть, какие версии слишком высоки:

gem list rspec

(проголосовал бы за вас, Алексей, но, видимо, мне не хватает «репутации» в стеке.)

2 голосов
/ 05 декабря 2010

У меня сейчас такая же проблема. чтобы исправить это попробуйте:

sudo gem uninstall rspec-core -v 2.2.1
bundle update rspec-core

Возможно, вам придется сделать это для других зависимых драгоценных камней (таких как rspec, rspec-rails и т. Д.). Используйте команду, чтобы увидеть кандидатов:

gem list rspec
0 голосов
/ 15 июля 2014

изменить номер версии с 2.1.0 на 2.2.1 в Gemfile.lock

0 голосов
/ 19 ноября 2013

Это легко решается:

bundle exec rspec

заставит компоновщик использовать версию гема, которая вам нужна для вашего проекта, игнорируя общесистемные настройки.

0 голосов
/ 02 декабря 2010

Rails noob здесь ... Я слежу за блестящим уроком Майкла Хартла ... застрял на макетах

Попробовал изменить версии rspec и webrat, как упоминалось в этого поста оrspec / webrat ошибки безрезультатно.

Для rspec v2.1.0 я получаю ту же ошибку, что и @ user338413.

rspec -v возвращает 2.2.1


dev машина с Ubuntu 10.04

решено .... работает с rspec 2.2.0 + webrat 0.7.1, хотя мне все равно хотелось бы знать, почему

...