2

Я развернул приложение, используя Capistrano 3. Я продолжаю получать следующую ошибку.Ошибка выполнения задания cron `require ': невозможно загрузить такой файл - bundler/setup (LoadError)

`require': cannot load such file -- bundler/setup (LoadError) 

Вот список Язычок хрон

PATH=/home/deploy/magnificent/shared/bundle/ruby/2.2.0/bin:/usr/local/rvm/gems/ruby-2.2.2/bin:/usr/local/rvm/gems/[email protected]/bin:/usr/local/rvm/rubies/ruby-2.2.2/bin:/usr/local/rvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games 

* * * * * /bin/bash -l -c 'cd /home/deploy/magnificent/releases/20150830045359 && bin/rails runner -e production '\''Document.process_pending'\'' >> log/cron_standard.log 2>> log/cron_error.log' 

и schedule.rb

env :PATH, ENV['PATH'] 
set :output, { error: 'log/cron_error.log', standard: 'log/cron_standard.log'} 

every 1.minutes do 
    runner 'Document.process_pending' 
end 

Пожалуйста, обратите внимание, что здесь все драгоценные камни установлены в default gemset

ответ

6

Обратите внимание на то, что все драгоценные камни установлены по умолчанию gemset

У меня было 3 гемблера, которые можно купить на производстве. Rails использует default, где установлены все необходимые драгоценные камни.

Как видно из списка crontab, crontab также ищет путь в каталоге global gemset.

Так что я только что выбрали global gemset и установить bundler

$ rvm gemset use global 
$ gem install bundler 

Эти шаги исправили проблему.

+0

при попытке выпустить первый шаг, я получаю «РВМ не является функцией, выбирая рубины с„использованием РВМ ...“не будет работать» – user1130176

+0

я сделал то же самое, и она решила мою проблему, кроме как она включала '' '' rvm gemset create global'''. Затем он переустановил все мои драгоценные камни, и мое приложение отлично работало. – amatusko