我在deploy.rb中有以下代码
namespace :app do desc "copies the configuration frile from ~/shared/config/*.yml to ~/config" task :copy_config_files,:roles => :app do run "cp -fv #{deploy_to}/shared/config/hoptoad.rb #{release_path}/config/initializers" run "cp -fv #{deploy_to}/shared/config/app_config.yml #{release_path}/config/app_config.yml" end end
我认为保持deploy.rb文件干净是个好主意,我试图在config下将代码移到capistrano_utilities.rb之上.我正在使用Rails应用程序.我将以下代码行添加到deploy.rb中
require File.expand_path(File.dirname(__FILE__) + "/../lib/capistrano_utilities")
现在我收到了以下错误.
undefined method `namespace' for main:Object (NoMethodError)
deploy.rb中self的值是Capistrano :: Configuration.虽然capistrano_utilities中self的值是Main.所以我理解为什么我得到名称空间方法错误.这个问题的解决方法是什么?