установка пакета не устанавливает все зависимости - PullRequest
3 голосов
/ 15 августа 2011

Я нахожусь на Mac OS X, и когда я запускаю sudo bundle install, он устанавливает несколько гемов на целевой машине:

Installing ptools (1.2.1) 
Using thor (0.14.6) 
Using railties (3.0.5) 
Using rails (3.0.5) 
Installing rails_config (0.2.4) 
Using shoulda (2.11.3) 
Your bundle is updated! Use `bundle show [gemname]` to see where a bundled gem is installed.
imac-cf:gnymbus apple$ rails console
Could not find rake-0.9.2 in any of the sources
imac-cf:gnymbus apple$ sudo gem install rake-0.9.2
ERROR:  Could not find a valid gem 'rake-0.9.2' (>= 0) in any repository
imac-cf:gnymbus apple$ sudo gem install rake -v=0.9.2
Successfully installed rake-0.9.2
1 gem installed
Installing ri documentation for rake-0.9.2...
Installing RDoc documentation for rake-0.9.2...
imac-cf:gnymbus apple$ sudo gem install rake-0.9.2
^CERROR:  Interrupted
imac-cf:gnymbus apple$ rails console
Could not find i18n-0.6.0 in any of the sources
imac-cf:gnymbus apple$ sduo gem install i18n -v=0.6.0
-bash: sduo: command not found
imac-cf:gnymbus apple$ sudo gem install i18n -v=0.6.0
Successfully installed i18n-0.6.0
1 gem installed
Installing ri documentation for i18n-0.6.0...
Installing RDoc documentation for i18n-0.6.0...

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

Когда я запускаю консоль rails, я постоянно получаю вывод о все большем и большем количестве неразрешенных зависимостей:

imac-cf:gnymbus apple$ rails console
Could not find tzinfo-0.3.29 in any of the sources
imac-cf:gnymbus apple$ sudo gem install tzingo -v=0.3.29
ERROR:  Could not find a valid gem 'tzingo' (= 0.3.29) in any repository
imac-cf:gnymbus apple$ sudo gem install tzinfo -v=0.3.29
Successfully installed tzinfo-0.3.29
1 gem installed
Installing ri documentation for tzinfo-0.3.29...
Installing RDoc documentation for tzinfo-0.3.29...
imac-cf:gnymbus apple$ rails console
Could not find polyglot-0.3.2 in any of the sources
imac-cf:gnymbus apple$ sudo gem install polyglot -v=0.3.2
Successfully installed polyglot-0.3.2
1 gem installed
Installing ri documentation for polyglot-0.3.2...
Installing RDoc documentation for polyglot-0.3.2...
imac-cf:gnymbus apple$ rails console
Could not find treetop-1.4.10 in any of the sources
imac-cf:gnymbus apple$ sudo gem install treetop -v=1.4.10
Successfully installed treetop-1.4.10
1 gem installed
Installing ri documentation for treetop-1.4.10...
Installing RDoc documentation for treetop-1.4.10...
imac-cf:gnymbus apple$ rails console
Could not find mail-2.2.19 in any of the sources
imac-cf:gnymbus apple$ sudo gem install mail -v=2.2.19
Successfully installed mail-2.2.19
1 gem installed
Installing ri documentation for mail-2.2.19...
Installing RDoc documentation for mail-2.2.19...
imac-cf:gnymbus apple$ rails console
Could not find addressable-2.2.6 in any of the sources

Является ли Rails действительно таким сложным? Нужно ли устанавливать зависимости вручную, одну за другой? Что я делаю не так?

Ответы [ 5 ]

6 голосов
/ 15 августа 2011
  1. Удалить Gemfile.lock
  2. Удалить все драгоценные камни под root (это предпочтительнее)
  3. Обновление рубинов
  4. gem install bundler
  5. bundle install
5 голосов
/ 03 августа 2012

Я использовал

bundle update 

он обновил все Gemfiles и установил недостающие самоцветы. Нет sudo, так как с помощью RVM

2 голосов
/ 18 августа 2013

На Mac OSX у меня была такая же проблема.Все, что мне нужно было сделать, это:

gem install bundler
1 голос
/ 28 августа 2012

Если вы используете Vagrant, попробуйте перезапустить VM.Часто, возвращаясь туда и обратно между работой и домом, я замечал, что связь VM с внешним миром теряется.В этом случае выполнение rails console проверит любые неудовлетворенные зависимости и завершится неудачей просто потому, что не может подключиться к ruby ​​gems.org.

Это действительно плохое сообщение об ошибке, которое застало меня врасплох на более чемодин раз.

0 голосов
/ 15 августа 2011

Хорошо, проблема была в том, что мне не пришлось запускать пакетную установку с помощью sudo.

Какая боль. Почему такого рода вещи где-то не документированы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...