Bundler генерирует ошибку неинициализированной константы Gem :: SilentUI (NameError) после обновления до Rubygems 1.5.0 - PullRequest
53 голосов
/ 01 февраля 2011

Я запустил gem update --system для обновления до Rubygems 1.5.0 и после каждого запуска любых команд bundle я получаю:

rvm/gems/ruby-1.8.7-p249/gems/bundler-1.0.9/lib/bundler/ui.rb:56: uninitialized constant Gem::SilentUI (NameError)

У кого-нибудь еще была эта проблема

Ответы [ 7 ]

101 голосов
/ 01 февраля 2011

Обновление до версии 1.0.10 (gem update bundler).Проблема исправлена ​​в более поздних версиях.

6 голосов
/ 03 февраля 2011

Если вы немного расплывчаты в том, что на самом деле представляет собой упаковщик, и не хотите учиться, то очень короткий ответ на вопрос:

gem install bundler
2 голосов
/ 01 марта 2011

Re: "просто обновить до bundler 1.0.10."- Обратите внимание, что вы не можете обязательно получить новую версию, просто выполнив

sudo gem update

. Вам необходимо полностью удалить текущий пакет, игнорируя предупреждения о зависимостях, которые он нарушает,а затем переустановите его.Это исправило мой Bundler 1.0.7 и снова заработало мою систему.

2 голосов
/ 01 февраля 2011

Это было опубликовано на трекере, по моим подсчетам, сейчас 6 раз.

Вот то, с кем я всех связывал: https://github.com/carlhuda/bundler/issues/issue/995

1 голос
/ 01 февраля 2011

Похоже, что вышедший сегодня RubyGems 1.5.0 несовместим с Bundler 1.0.9.

Возможно, вы захотите вернуться к RubyGems 1.4 до тех пор, пока не будет выпущено обновление для Bundler (которое, вероятно, будет очень и очень скоро).

Обновление: Выпущен Bundler 1.0.10.

0 голосов
/ 07 апреля 2011

Обратите внимание, что если вы используете rvm, вы не сможете самостоятельно обновить bundler. Вам может потребоваться обновить rvm для обновления компоновщика, поскольку rvm довольно тесно интегрирует компоновщик. Я получил эту ошибку, попытался обновить пакет, не смог, и обновление rvm устранило мою проблему.

0 голосов
/ 23 марта 2011

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

Например, в приложении, над которым я сейчас работаю:

Ruby 1.8.6-p383 RubyGems 1.3.6 Bundler 0.9.26

...