Неверный файл кэша спецификаций в /latest-specs.rb

У меня аналогичная проблема: Неверный файл кэша спецификации, но ответа нет.

Наше приложение rails недавно обновилось с ruby ​​2.1.2 до 2.1.5.

Когда я загрузил это на свой ноутбук (рабочий стол работает нормально), мне нужно было установить rvm 2.1.5, а затем создать новый gemset для 2.1.5.

Я попытался запустить пакет, но пакет не установлен, поэтому я попробовал gem install bundler, и он ответил следующим сообщением об ошибке:

ERROR:  While executing gem ... (Gem::Exception)
    Invalid spec cache file in /my_dir/.gem/specs/api.rubygems.org%443/latest_specs.4.8

При проверке этого каталога я обнаружил, что есть файл specs.4.8, но не файл latest_specs.4.8.

Что я пробовал:

  • Я удалил и заново создал набор драгоценных камней, та же проблема.
  • Я побежал gem update
  • Я сдул /my_dir/.gem/specs и перезапустил gem update
  • Я побежал gem update --system
  • Я переустановил рубин 2.1.5 и сделал все это снова...

Когда я изменил ruby-версию обратно на 2.1.2 и использовал rvm use 2.1.2; bundle, проблем не было (но тогда упаковщик уже существует в этом гемсете).

Окружение драгоценного камня:

RubyGems Environment:
  - RUBYGEMS VERSION: 2.2.2
  - RUBY VERSION: 2.1.5 (2014-11-13 patchlevel 273) [x86_64-darwin10.0]
  - INSTALLATION DIRECTORY: /my_dir/.rvm/gems/ruby-2.1.5
  - RUBY EXECUTABLE: /my_dir/.rvm/rubies/ruby-2.1.5/bin/ruby
  - EXECUTABLE DIRECTORY: /my_dir/.rvm/gems/ruby-2.1.5/bin
  - SPEC CACHE DIRECTORY: /my_dor/.gem/specs
  - RUBYGEMS PLATFORMS:
    - ruby
    - x86_64-darwin-10
  - GEM PATHS:
     - /my_dir/.rvm/gems/ruby-2.1.5
     - /my_dir/.rvm/gems/ruby-2.1.5@global
  - GEM CONFIGURATION:
     - :update_sources => true
     - :verbose => true
     - :backtrace => false
     - :bulk_threshold => 1000
  - REMOTE SOURCES:
     - https://rubygems.org/

person Taryn East    schedule 09.02.2015    source источник


Ответы (2)


Попробуй это:

gem sources --clear-all
gem sources --update

Если это не сработает, см. мой более подробный ответ здесь: Повреждённая система ruby ​​gem

person joelparkerhenderson    schedule 10.02.2015
comment
спасибо - у меня еще не было возможности попробовать это (сегодня я снова на рабочем столе), но это звучит как хороший список вещей, на которые стоит обратить внимание. - person Taryn East; 10.02.2015
comment
Вы случайно не знаете, почему last_specs vs specs? Rubygems что-то изменили в том, как назвать файл, в котором находятся спецификации? - person Taryn East; 10.02.2015

В конце концов я сдался и переустановил ruby ​​​​2.1.5 и удалил набор драгоценных камней.

Потом оказалось, что я могу установить, не утруждая себя созданием гемсета.

Просто rvm use 2.1.5, потом gem install bundler, потом bundle

Итак: понятия не имею, что пошло не так (и все равно буду призывать других отвечать за объяснение), но это то, что сработало для меня.

person Taryn East    schedule 09.02.2015