我正在使用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
?
答案 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