Rails - грабли: gems: установить - не устанавливать gems - PullRequest
4 голосов
/ 16 марта 2010

Если я определю несколько драгоценных камней в моем файле config / environment / test.rb следующим образом:

config.gem "rspec"
config.gem "rspec-rails"
config.gem "mocha"

и затем запустите 'rake gems: install RAILS_ENV = test'

Я получаю следующую ошибку:

Missing these required gems:
  mocha  

Run `rake gems:install` to install the missing gems.

однако, если я запускаю rake gems: установите так, как он говорит, что он будет продолжать повторяться так вечно.

Как мне на самом деле установить гемы, используя rake (не gem install)?

спасибо!

Ответы [ 4 ]

2 голосов
/ 16 марта 2010

Интересно, есть ли ссылка на что-то из драгоценного камня мокко в вашем файле rake или файле environment.rb? Я видел подобные проблемы раньше, и это выглядит как проблема такого типа.

Попробуйте установить mocha 'вручную' с помощью ...

gem install mocha

Тогда посмотри, сможешь ли ты запустить rake gems:install.

1 голос
/ 17 сентября 2010

Я тоже столкнулся с этой проблемой и следовал указаниям здесь , чтобы решить ее. В частности, удаление и восстановление lib / tasks / rspec.rake очень важно. Кроме того, добавив

:lib => false

до

config.gem "rspec", :lib => false, :version => ">= 1.2.0"

помогло.

0 голосов
/ 23 сентября 2010

Какую платформу вы используете? Если это окно, то

Команда Выполнить ниже и ее работы

gem install mocha --platform = mswin32

0 голосов
/ 10 мая 2010

Я обнаружил, что это проблема GEM_PATH. По сути, рельсы не могут найти драгоценных камней, которые вы установили, и хотя они там, они полностью невидимы. Немного странно, но эй.

На Dreamhost мне пришлось настроить строку:

ENV['GEM_PATH'] = '/home/<my_account>/.gems:/usr/lib/ruby/gems/1.8/gems'

в config / environment.rb

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...