LoadError:无法加载此类文件 - capistrano / rbenv

时间:2014-10-31 12:35:10

标签: ruby-on-rails ruby-on-rails-4 deployment capistrano

我正在跟随this guide使用Capistrano在DigitalOcean上部署我的Rails应用。

在第5站结束时,我通过以下命令检查服务器可用性:

cap production deploy:check

结果是:

alucardu@alucardu-VirtualBox:~/sites/movieseat$ cap production deploy:check
cap aborted!
LoadError: cannot load such file -- capistrano/rbenv
/home/alucardu/sites/movieseat/Capfile:18:in `<top (required)>'
(See full trace by running task with --trace)

在我的gemfile中,我有:

# Add capistrano
gem 'capistrano-bundler' # for capistrano/bundler
gem 'capistrano-rails' # for capistrano/rails/*

group: :development do
  gem 'capistrano', '~> 3.0', require: false
  gem 'capistrano-bundler', require: false
  gem 'capistrano-rails', require: false
  gem 'capistrano-rbenv', github: 'capistrano/rbenv', require: false
end

在我的Capfile中,我有:

require 'capistrano/rbenv'
# require 'capistrano/chruby'
require 'capistrano/bundler'
require 'capistrano/rails/assets'
require 'capistrano/rails/migrations'

我也做过rbenv版本检查。

alucardu@alucardu-VirtualBox:~/sites/movieseat$ rbenv -v
rbenv 0.4.0-98-g13a474c

有人能指出我的问题吗?

更新

我想我还没有安装好宝石。

修正了它。

gem install capistrano-rbenv

2 个答案:

答案 0 :(得分:1)

Capistrano的任务通常在production环境中运行。因此,在Gemfile添加与production

中的capistrano相关的宝石
group :development, :production do
  gem 'capistrano', '~> 3.0', require: false
  gem 'capistrano-bundler', require: false
  gem 'capistrano-rails', require: false
  gem 'capistrano-rbenv', github: 'capistrano/rbenv', require: false
end

答案 1 :(得分:1)

我通过运行bundle exec cap production deploy而不是cap production deploy来修复此问题。