Rails 4, ruby-2.0.0-p247, pow, rvm — LoadError: невозможно загрузить такой сборщик/установщик файлов

У меня внезапно возникла куча проблем с pow, и я не могу понять, почему.

У меня есть мое приложение по адресу /path/to/app, и я привязал его к pow:

$ cd ~./pow
$ ln -s /path/to/app app_name

У меня есть приложение, настроенное с помощью rvm:

$ rvm -v
rvm 1.25.0 (stable)

и мой драгоценный камень настроен с .ruby-version и .ruby-gemset. Когда я проверяю rvm list и rvm gemset list, я получаю правильную версию ruby ​​​​и указанный набор драгоценных камней.

$ rvm list
rvm rubies
   ruby-1.9.3-p362 [ x86_64 ]
   ruby-1.9.3-p448 [ x86_64 ]
=* ruby-2.0.0-p247 [ x86_64 ]
   ruby-2.0.0-p353 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

$ rvm gemset list
gemsets for ruby-2.0.0-p247 (found in /Users/anthony/.rvm/gems/ruby-2.0.0-p247)
   (default)
=> appgemset

Вот проблема: когда я посещаю app_name.dev/ в браузере, я получаю следующую ошибку.

LoadError: cannot load such file -- bundler/setup
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
~/path/to/app/config/boot.rb:6:in `<top (required)>'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
~/path/to/app/config/application.rb:1:in `<top (required)>'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
~/path/to/app/config/environment.rb:2:in `<top (required)>'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require'
~/path/to/app/config.ru:2:in `block in <main>'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/lib/nack/builder.rb:4:in `instance_eval'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/lib/nack/builder.rb:4:in `initialize'
~/path/to/app/config.ru:1:in `new'
~/path/to/app/config.ru:1:in `<main>'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/lib/nack/server.rb:50:in `eval'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/lib/nack/server.rb:50:in `load_config'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/lib/nack/server.rb:43:in `initialize'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/lib/nack/server.rb:13:in `new'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/lib/nack/server.rb:13:in `run'
~/Library/Application Support/Pow/Versions/0.4.1/node_modules/nack/bin/nack_worker:4:in `<main>'

Теперь, согласно руководству по устранению неполадок, я попытался

echo "export POW_RVM_PATH=/usr/local/rvm/scripts/rvm" >> ~/.powconfig

при замене /usr/local/rvm/ моим местом установки rvm и перезапуске pow. Не работает.

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

$ rvm gemset use global && gem install bundler

Я также пытался удалить pow и переустановить, но безрезультатно. Я дважды и трижды проверял, что мое приложение использует правильную версию ruby. Кроме того, pow работает с другими приложениями, на которые у меня есть символические ссылки.

У кого-нибудь есть мысли? Заранее спасибо.


person Anthony To    schedule 29.01.2014    source источник
comment
вы читали этот первый rvm.io/integration/pow?   -  person mpapis    schedule 30.01.2014
comment
Это сделало это для меня. Спасибо!   -  person Anthony To    schedule 08.02.2014


Ответы (1)


Создайте файл .powrc в корне вашего проекта и вставьте следующий код:

if [ -f "$rvm_path/scripts/rvm" ]; then
  source "$rvm_path/scripts/rvm"
  rvm use .
fi

Закройте терминал, cd в свой проект и перезапустите сервер.

person Nicolas Garnil    schedule 29.01.2014
comment
Спасибо за ответ. На самом деле у меня уже был .powrc, забыл упомянуть об этом ранее - person Anthony To; 29.01.2014
comment
содержит ли .powrc этот скрипт? закройте терминал и снова перейдите к проекту. - person Nicolas Garnil; 29.01.2014