尝试cap deploy
从 Windows 机器执行命令时,我从 VPS 收到此错误:
sh: rake: not found
如果我通过 SSH 连接到服务器本身,我可以轻松运行rake
而不会出现问题。它位于一个奇怪的位置,因为我使用的是 RVM,但它仍然有效。当它从 Capistrano 运行时,似乎不知何故,它的位置信息变得一团糟。
使用 Rails 进行敏捷 Web 开发将以下内容添加到deploy.rb
:
# adjust if you are using RVM, remove if you are not
$:.unshift(File.expand_path('./lib', ENV['rvm_path']))
require "rvm/capistrano"
set :rvm_ruby_string, '1.9.2'
set :rvm_type, :user
问题是,我在 Windows 机器上(不使用 RVM),这会导致整个deploy
Capistrano 任务崩溃,因为我没有 RVM。我是否需要在本地安装 RVM 才能正常工作?我希望它只在服务器上是必需的。
怎么rake
找不到了?!当我自己通过 SSH 连接到服务器时,肯定可以工作......
编辑:看起来这个问题非常相似:
然而,他的解决方案似乎涉及做我想做的同样的事情——除了不知何故他对线路没有任何问题,线路require "rvm/capistrano"
在我的机器上崩溃了。另外,他的路径似乎与我的格式不同?
矿:/home/sysadmin/.rvm/gems/ruby-1.9.3-p194@global/bin/rake
他的:/usr/local/rvm/gems/ruby-1.9.2-p290@rails31dataserver/bin
我真的很困惑这些环境是如何工作的......