При попытке запуска я получаю следующую ошибку cap production deploy
.
DEBUG [dc362284] Bundler::GemNotFound: Could not find json-1.8.1.gem for installation
DEBUG [dc362284] An error occurred while installing json (1.8.1), and Bundler cannot continue.
DEBUG [dc362284] Make sure that `gem install json -v '1.8.1'` succeeds before bundling.
Возможно, важно отметить, что это развертывание работало, чем я обновился до Ruby 2.1.0, чтобы удалить ошибку кодирования. Я обновился локально, и все работало нормально. Я запустил rvm install 2.1.0
и rvm use 2.1.0
изменил свой .ruby-version
файл, чтобы отразить это обновление Ruby.
Команда bundle install
работает локально, но выдает ту же ошибку выше, когда я отправляю ssh на целевой сервер и запускаю эту команду.
Если я побегу, gem list
то увижу это в списке драгоценных камней.
...
jquery-rails (3.0.4)
json (1.8.1)
less (2.3.2)
...
Если я попробую рекомендованное решение gem install json -v '1.8.1'
локально и на конечном сервере, я получу следующий результат:
Building native extensions. This could take a while...
Successfully installed json-1.8.1
Parsing documentation for json-1.8.1
Done installing documentation for json after 0 seconds
1 gem installed
Похоже, драгоценный камень установлен, не так ли? Почему это происходит? Как я могу это решить? Любая помощь будет принята с благодарностью.
bundle show json
вам дает?gem json, '1.8.1'
в Gemfilesudo apt-get install ruby-dev
на моем Ubuntu.Ответы:
$ bundle update json $ bundle install
источник
Итак, спустя полдня и почти сразу после публикации своего вопроса я нашел ответ. Bundler 1.5.0 имеет ошибку, из-за которой он не распознает драгоценные камни по умолчанию, как указано здесь.
Решением было обновление до бандлера 1.5.1, используя
gem install bundler -v '= 1.5.1'
источник
gem install json -v '1.8.1'
после обновления устранило сообщение об ошибке для меня.gem install json -v '1.8.1'
за которым последовалbundle package
трюк для меняЗапустите эту команду, и все будет в порядке
sudo apt-get install libgmp-dev
источник
если вы используете MacOS Sierra и ваша рубиновая версия - 2.4.0. Рубиновая версия несовместима с json 1.8.3.
Вы можете попробовать добавить эту строку в свой Gemfile:
gem 'json', github: 'flori/json', branch: 'v1.8'
У меня это работает!
источник
Чтобы решить эту проблему, просто запустите:
bundle update
Это обновит версию вашего сборщика. Затем запустите:
bundle install
Ваша проблема будет решена. Решение хорошо объяснено здесь .
источник
bundle update
этого установка прошла отлично. Спасибо за чистое решение.bundle update
обновит все ваши драгоценные камни.gem update bundler
обновит бандлер.Я нашел решение здесь . Проблема с json версии 1.8.1 и ruby 2.2.3, поэтому установите версию json 1.8.3.
gem install json -v1.8.3
источник
Gemfile.lock
а потом просто запускаюbundle install
и все.Ты должен попытаться
$ sudo gem install json -v '1.8.2'
в моем случае (Ubuntu 14.04) это не работало напрямую, и мне пришлось сделать это:
$ sudo apt-get install ruby-dev
а затем я мог установить драгоценный камень и продолжить. Была еще одна проблема, которую исправили:
$ sudo apt-get install libsqlite3-dev
Надежда помогает.
источник
Если рекомендуемый ответ не помог, потому что вы уже используете более новую версию бандлера. Попробуйте решение, которое сработало для меня.
Удалите все, что находится в папке вашего поставщика. Добавьте строку в свой гем-файл
gem 'json', '1.8.0'
Затем запустите -
bundle update json
.Кажется, это проблема с 1.8.1, поэтому возвращение к 1.8.0 помогло мне.
источник
gem 'json', '1.8.6'
сработало для меня. Вы можете попробовать это.Я столкнулся с этой ошибкой при попытке запустить проект на моем локальном компьютере разработчика (OSX 10.6), используя Sinatra и Postgresql (через activerecord), работающий на rvm'd ruby 2.1. Я нашел свой ответ здесь: https://github.com/wayneeseguin/rvm/issues/2511
Моя точная проблема (после первого блока записей журнала):
Ответ :
Объяснение :
Для полноты картины я сначала забыл обновить rvm (
rvm get head
), что привело к некоторым другим ошибкам, но--disable-binary
флаг все же мне нужен, как только я это сделал.источник
rvm list
, и вы увидите, какая у вас текущая версия. Используйте полную строку (например, ruby-2.0.0-p451) вместо2.1.0
указанной выше.bundle update json
. Помогло дозвониться.источник
Когда я попытался установить json gem, используя
gem install json
отдельно от простого использования, котороеbundle install
я получилERROR: Failed to build gem native extension.
, поискав это, я обнаружил, что используюapt-get install ruby-dev
сделал трюк
источник
Для OS X убедитесь, что у вас есть coreutils
$ brew install coreutils $ bundle
источник
Похоже, это ошибка Bundler, не распознающая драгоценные камни по умолчанию, установленные вместе с ruby 2.x. У меня все еще возникала проблема даже с последней версией бандлера (1.5.3).
Одно из решений - просто удалить json-1.8.1.gemspec из каталога gemspec по умолчанию.
rm ~/.rubies/ruby-2.1.0/lib/ruby/gems/2.1.0/specifications/default/json-1.8.1.gemspec
После этого у сборщика не должно возникнуть проблем с поиском драгоценного камня. Обратите внимание, что я использую chruby. Если вы используете какой-либо другой менеджер рубинов, вам придется соответствующим образом обновить свой путь.
источник
Мне не хватало заголовков C, решение было загрузить его для Xcode, это лучший способ.
xcode-select --install
Надеюсь, поможет.
источник
Пакет не смог установить json -v '1.8.1', и удаление моего Gemfile.lock и запуск пакета снова решили эту проблему для меня.
источник
Я установил последнюю версию json:
gem install json
Затем удалил строку json (1.8.1) из Gemfile.lock и сделал
bundle install
И тогда файл Gemfile.lock использует json (1.8.3) без ошибок
источник
Переключение версии ruby с 1.9 на 2.2 с rvm помогло мне
источник
Для меня некоторые из упомянутых ранее ответов были полезны с точки зрения понимания, но они не решили мою проблему.
Вот что я сделал, чтобы решить проблему.
Bundler -v
команда). У меня была установлена версия 1.12.5gem install bundler -v '1.11.2'
)источник
Для macOS Sierra:
Я столкнулся с этой ошибкой, когда использовал bundler (
v1.15.3
) вv4.2
проекте Rails ( ). Решение для меня -gem uninstall bundler -v '1.15.3'
иgem install bundler -v '1.14.6'
.источник