#ruby-on-rails-3.1 #bundler
#ruby-on-rails-3.1 #упаковщик #bundler
Вопрос:
Я уже пробовал это пару раз. Я использую rvm, а ruby, который я использую, — ree 1.8.7. Запуск «обновления пакета» после изменения моего Gemfile приводит к зависанию процессора почти на 100%. Он работает уже больше часа. Есть ли что-то особенное, что мне нужно сделать?
Комментарии:
1. вы когда-нибудь разбирались в этом? Это только начало происходить со мной…
Ответ №1:
Я выяснил, как это отладить, и, таким образом, смог решить свои проблемы.
Краткая версия (основанная на моих, по общему признанию, поверхностных знаниях о bundler):
bundle update
илиbundle install
оба посмотрите на свой Gemfile, а затем попытайтесь разрешить зависимости для указанных драгоценных камней. Скорее всего, именно этот шаг приводит к сгоранию вашего процессора (это должно произойти после его печатиFetching source index for http://rubygems.org/
)
С чем я столкнулся, так это с тем, что иногда Bundler застревает в бесконечном цикле (или, по крайней мере, дольше, чем я ждал), пытаясь разрешить конфликтующие требования. В моем случае для двух разных драгоценных камней потребовался третий драгоценный камень с разными требованиями к версии.
По какой-то причине bundler попал в бесконечный цикл (или в какой-то очень, очень длинный цикл), пытаясь разрешить зависимости.
Я в основном нашел эту проблему на github:https://github.com/carlhuda/bundler/issues/1450
что побудило меня попробовать эту команду:
DEBUG_RESOLVER=1 bundle install
Запуск этого выдал достаточный результат, чтобы я мог идентифицировать зависимость gem, которая сбивала с толку bundler. В моем случае это были два разных драгоценных камня, требующих разных версий builder gem.
Я исправил это, указав версию builder, которая будет работать для обоих gems:
gem 'builder', '~> 3.0.0'
Это уладило проблему, и в следующий раз, когда я запустил install или update, она завершилась в разумные сроки.
Я надеюсь, это поможет вам разобраться в вашей проблеме.