如何用ruby 1.8.7安装capistrano v2.13.5?

时间:2015-10-06 10:07:13

标签: ruby rubygems capistrano net-ssh

我正在使用ruby 1.8.7 (2013-06-27 patchlevel 374) [i686-darwin14]。当我尝试安装capistrano gem时,我收到以下错误:

sudo gem install capistrano -v2.13.5
ERROR:  Error installing capistrano:
    net-ssh requires Ruby version >= 2.0.

AFAIK capistrano 2.13.5应与ruby 1.8.7

兼容

如何在安装capistrano v2.13.5(< 2.0)的情况下安装ruby 1.8.7

4 个答案:

答案 0 :(得分:6)

我已经将此问题排除在手动安装capistrano依赖项之外。如果遇到同样的问题,请执行以下命令:

sudo gem install net-sftp -v2.0.0
sudo gem install net-scp -v1.0.0
sudo gem install net-ssh-gateway -v1.1.0
sudo gem install capistrano -v2.13.5

答案 1 :(得分:5)

在Ubuntu 14.04中安装Capifony时出现了相同的错误消息。 我这样做了:

# gem install net-ssh -v 2.9.2

然后这个:

# gem install capifony

有效。

我找到了解决方案here

答案 2 :(得分:1)

即使在安装了依赖项之后,capistrano安装过程也要求net-ssh需要ruby> = 2.

我必须从https://github.com/capistrano/capistrano/releases下载我想要的来源。解压缩,cd进入目录,然后运行:

gem build capistrano.gemspec
gem install --local capistrano-2.15.5.gem

答案 3 :(得分:1)

Capistrano正在尝试安装其最新版本的依赖项(net-ssh),该版本与v2.0之前的ruby版本不兼容。解决方案是在安装capistrano之前安装该依赖项的正确版本。正确的版本意味着依赖项与Ruby和capistrano兼容。在这种情况下,这是net-ssh v 2.6.5。所以按照顺序工作:

gem install net-ssh -v 2.6.5
gem install capistrano -v 2.13.5