【问题标题】:How to un-extract and re-extract Capistrano to the right place如何将 Capistrano 解压并重新解压到正确的位置
【发布时间】:2012-04-25 12:48:58
【问题描述】:

尝试执行此操作时出现此错误:bundle exec cap deploy

"RVM - Capistrano integration was extracted to a separate gem, \
install: `gem install rvm-capistrano` and remove the `$LOAD_PATH.unshift` line, \
note also the 'set :rvm_type, :user' is now the default (instead of :system)."

很遗憾,这些技巧都不起作用。

问题源于我必须将我的 RVM 副本恢复为旧副本以使其符合 POW。完成此操作后,此功能不再起作用。哪种有道理

所以我的问题很简单,我如何重新设计我的 Capistrano 精确度以不是一个单独的宝石

我尝试卸载所有内容,重新安装所有内容,但这似乎不起作用。

有什么想法吗?

【问题讨论】:

    标签: ruby-on-rails rvm capistrano


    【解决方案1】:

    我和你有同样的问题。在我的 deploy.rb 文件中,我不得不注释掉这一行:

    $:.unshift(File.expand_path('./lib', ENV['rvm_path'])) # Add RVM's lib directory to the load path.
    

    # $:.unshift(File.expand_path('./lib', ENV['rvm_path'])) # Add RVM's lib directory to the load path.
    

    【讨论】:

    • 这完全是我的解决方案。错误消息说“删除$LOAD_PATH.unshift 行”,但没有说明在哪里!
    【解决方案2】:

    RVM 适用于 POW,这是已知问题:https://github.com/37signals/pow/issues/271

    最简单的解决方案(在项目目录中):

    rvm env . > .powenv
    

    只需使用最新的 RVM、POW、rvm-capistrano gem - 它应该可以正常工作。

    【讨论】:

    • 嗯.. 如果我试图让 RVM 与最新添加的 POW 一起工作,您的更正是。我不是。当我试图使它们兼容时,我尝试过这个,但这没有用。现在我只是想让 Capistrano gem 工作。在我的问题中,我提到我已经尝试了他们的失败响应中提出的所有可能的解决方案。 :D
    • RVM 不再支持旧行为(没有 gem rvm-capistrano),如果选择继续使用旧版本,您将无法获得我的帮助(我是 RVM 维护者)。
    • 只是一个更新。我在我的 Gemfile 中使用 rvm-capistrano 重新安装了最新的 rvm (1.13.0)(此特定应用程序不使用 POW),但在尝试执行 bundle exec cap deploy staging 时仍然出现此错误。我的应用程序中没有 load_path 声明。您能想到其他可能解决此问题的方法吗?
    • 这是新问题,打开一个新问题并包含您的 deploy.rb
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-02-03
    • 1970-01-01
    • 1970-01-01
    • 2016-12-28
    • 2022-06-24
    • 2011-09-15
    • 1970-01-01
    相关资源
    最近更新 更多