Ответ 1
Для меня (я работаю с RVM) он работал просто:
gem update --system
gem update bundler
Я работаю над приложением Rails 2.2.2. Для этого я установил rvm с Ruby версии 1.9.3p551. Для этого приложения нет Gemfile. Так, как упоминалось в файле environment.rb, я создал Gemfile с рельсами и sqlite3. При запуске rake db: create, я столкнулся со следующей проблемой.
[email protected]:~/Desktop/practice/store$ rake db:create
/home/whoami/.rvm/gems/ruby-1.9.3-p551/bin/rake:22:in `<main>': undefined method `activate_bin_path' for Gem:Module (NoMethodError)
from /home/whoami/.rvm/gems/ruby-1.9.3-p551/bin/ruby_executable_hooks:15:in `eval'
from /home/whoami/.rvm/gems/ruby-1.9.3-p551/bin/ruby_executable_hooks:15:in `<main>'
Пожалуйста, помогите мне.
Для меня (я работаю с RVM) он работал просто:
gem update --system
gem update bundler
Пробовали ли вы эти команды
Переименуйте/usr/lib/ruby /site_ruby/в site_ruby.bak/ Выполните следующие команды:
gem install rubygems-update
enter code here
update_rubygems
Если вы получите ошибку, попробуйте вместо этого:
ruby --disable-gems -S update_rubygems
У меня была аналогичная проблема, при запуске автономной passenger
она работала нормально. Однако запуск его с помощью службы systemd дал ту же ошибку, что и OP:
undefined method `activate_bin_path' for Gem:Module (NoMethodError)
Мне удалось решить эту проблему, используя
env | egrep 'gem|rvm|ruby' > passenger.env
и добавив его в служебный файл с помощью EnvironmentFile=[...]/passenger.env
.
Мы надеемся, что это будет полезно для других людей, придерживающихся этого.
Попробуйте выполнить bundle
cd myapp
gem install bundler
bundle install
bundle exec rake db:create