2015-08-30 76 views
2

我部署了使用Capistrano 3的應用程序。我一直在收到以下錯誤。運行cron job'require'時出錯:無法加載這樣的文件 - bundler/setup(LoadError)

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

這裏是cron的選項卡列表

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寶石

回答

6

這裏請注意,所有的寶石都安裝在默認的寶石套裝

我有3個寶石可用於生產。 Rails使用default,其中安裝了所有必需的寶石。

從crontab列表中可以看出,crontab也在尋找gemset目錄下的路徑global

所以我就選擇global寶石和安裝bundler

$ rvm gemset use global 
$ gem install bundler 

這些步驟解決了該問題。

+0

,我得到「RVM不是一個函數,選擇紅寶石與‘RVM使用......’行不通」 – user1130176

+0

我做的同樣的事情,它解決了我的問題,除了它首先包含'''rvm gemset create global'''。然後它重新安裝了所有的寶石,我的應用程序運行完美。 – amatusko

1

這爲我工作:

試圖發出的第一步時
rvm cron setup 
相關問題