Подтвердить что ты не робот

Ошибка при установке драгоценных камней

У меня возникает ошибка при установке определенных драгоценных камней. Я использую ubuntu 10.10. Об этом сообщают сообщения об ошибках.

ERROR:  While executing gem ... (NoMethodError)
undefined method `spec' for nil:NilClass
4b9b3361

Ответ 1

У меня была точно такая же ошибка, как и эта...

При установке Rails 3 на моем компьютере произошел сбой питания. После перезагрузки компьютера и продолжения установки Rails 3 процесс завершился неудачно с такой же ошибкой. Проблема была связана с кешем установки gem, у которого были поврежденные/пустые файлы gem. Мое решение состояло в том, чтобы очистить этот кеш и запустить установку еще раз:

  • Узнайте местоположение вашего кэша с помощью gem env
  • Список всех драгоценных камней в этом кеше, например. ls -l /usr/lib/ruby/gems/1.8/cache/
  • Сравните с успешно установленными драгоценными камнями, используя gem list
  • Удалите драгоценные камни из списка кеша, отсутствующего в списке драгоценных камней, например. используя rm
  • Мне также пришлось удалить некоторые пустые/поврежденные файлы gemspec из каталога спецификаций ls -l /usr/lib/ruby/gems/1.8/specifications/
  • Продолжить установку, например. sudo gem install -v=3.0.6 rails --no-rdoc --no-ri

Надеюсь, это поможет кому-то, у кого есть перебои с питанием или другой внешний сбой во время процесса установки gem!

Ответ 2

Некоторые драгоценные камни полагаются на другие драгоценные камни для запуска, но не были правильно настроены для их автоматической установки (т.е. у них не были установлены соответствующие зависимости).

Вы часто узнаете, когда пытаетесь запустить их... точно так же.

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

Другие драгоценные камни не так просто понять, но поиск по ошибкам для сообщения об ошибке (или перенос его на StackOverflow) обычно довольно быстро сортирует.