首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Ubuntu14.04中安装>= 2.0的Ruby版本?

如何在Ubuntu14.04中安装>= 2.0的Ruby版本?
EN

Stack Overflow用户
提问于 2015-11-06 07:22:46
回答 2查看 1.8K关注 0票数 1

我在Amazon中有一个运行Ubuntu 14.4.3EC2实例。它将运行Vagrant并使用vagrant-aws插件部署一些vm。但每次我尝试安装插件时,都会出现以下错误:

代码语言:javascript
复制
ubuntu@ip-172-25-56-198:~$ vagrant plugin install vagrant-aws
Installing the 'vagrant-aws' plugin. This can take a few minutes...
/usr/lib/ruby/1.9.1/rubygems/installer.rb:388:in `ensure_required_ruby_version_met': net-ssh requires Ruby version >= 2.0. (Gem::InstallError)
    from /usr/lib/ruby/1.9.1/rubygems/installer.rb:156:in `install'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:297:in `block in install'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:270:in `each'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:270:in `each_with_index'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:270:in `install'
    from /usr/share/vagrant/plugins/commands/plugin/action/install_gem.rb:65:in `block in call'
    from /usr/share/vagrant/plugins/commands/plugin/gem_helper.rb:42:in `block in with_environment'
    from /usr/lib/ruby/1.9.1/rubygems/user_interaction.rb:40:in `use_ui'
    from /usr/share/vagrant/plugins/commands/plugin/gem_helper.rb:41:in `with_environment'
    from /usr/share/vagrant/plugins/commands/plugin/action/install_gem.rb:52:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/warden.rb:34:in `call'
    from /usr/share/vagrant/plugins/commands/plugin/action/bundler_check.rb:20:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/warden.rb:34:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/builder.rb:116:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/runner.rb:69:in `block in run'
    from /usr/lib/ruby/vendor_ruby/vagrant/util/busy.rb:19:in `busy'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/runner.rb:69:in `run'
    from /usr/share/vagrant/plugins/commands/plugin/command/base.rb:17:in `action'
    from /usr/share/vagrant/plugins/commands/plugin/command/install.rb:27:in `execute'
    from /usr/share/vagrant/plugins/commands/plugin/command/root.rb:56:in `execute'
    from /usr/lib/ruby/vendor_ruby/vagrant/cli.rb:38:in `execute'
    from /usr/lib/ruby/vendor_ruby/vagrant/environment.rb:484:in `cli'
    from /usr/bin/vagrant:127:in `<main>'

我在我的desktop机器上有相同版本的Ubuntu,没有这个问题。我做错了什么?我试图删除ruby1.9,只安装ruby2.2,但仍然出现相同的错误。

编辑

代码语言:javascript
复制
ubuntu@ip-172-25-56-198:~$ ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-linux]

Vagrant安装了ruby1.9,即使我安装了较新的版本!

代码语言:javascript
复制
root@ip-172-31-29-138:/tmp# apt-get install -y vagrant
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  ruby1.9.1
Suggested packages:
  ruby1.9.1-examples ri1.9.1 graphviz ruby1.9.1-dev virtualbox
The following NEW packages will be installed:
  ruby1.9.1 vagrant
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/425 kB of archives.
After this operation, 1.898 kB of additional disk space will be used.
Selecting previously unselected package ruby1.9.1.
(Reading database ... 146549 files and directories currently installed.)
Preparing to unpack .../ruby1.9.1_1%3a1.9.3.551-2bbox1~trusty1_amd64.deb ...
Unpacking ruby1.9.1 (1:1.9.3.551-2bbox1~trusty1) ...
Selecting previously unselected package vagrant.
Preparing to unpack .../vagrant_1.4.3-1_all.deb ...
Unpacking vagrant (1.4.3-1) ...
Processing triggers for man-db (2.6.7.1-1ubuntu1) ...
Setting up ruby1.9.1 (1:1.9.3.551-2bbox1~trusty1) ...
Setting up vagrant (1.4.3-1) ...

然后,同样的错误再次出现:

代码语言:javascript
复制
root@ip-172-25-56-198:/tmp# vagrant plugin install vagrant-aws
Installing the 'vagrant-aws' plugin. This can take a few minutes...
/usr/lib/ruby/1.9.1/rubygems/installer.rb:388:in `ensure_required_ruby_version_met': net-ssh requires Ruby version >= 2.0. (Gem::InstallError)
    from /usr/lib/ruby/1.9.1/rubygems/installer.rb:156:in `install'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:297:in `block in install'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:270:in `each'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:270:in `each_with_index'
    from /usr/lib/ruby/1.9.1/rubygems/dependency_installer.rb:270:in `install'
    from /usr/share/vagrant/plugins/commands/plugin/action/install_gem.rb:65:in `block in call'
    from /usr/share/vagrant/plugins/commands/plugin/gem_helper.rb:42:in `block in with_environment'
    from /usr/lib/ruby/1.9.1/rubygems/user_interaction.rb:40:in `use_ui'
    from /usr/share/vagrant/plugins/commands/plugin/gem_helper.rb:41:in `with_environment'
    from /usr/share/vagrant/plugins/commands/plugin/action/install_gem.rb:52:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/warden.rb:34:in `call'
    from /usr/share/vagrant/plugins/commands/plugin/action/bundler_check.rb:20:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/warden.rb:34:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/builder.rb:116:in `call'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/runner.rb:69:in `block in run'
    from /usr/lib/ruby/vendor_ruby/vagrant/util/busy.rb:19:in `busy'
    from /usr/lib/ruby/vendor_ruby/vagrant/action/runner.rb:69:in `run'
    from /usr/share/vagrant/plugins/commands/plugin/command/base.rb:17:in `action'
    from /usr/share/vagrant/plugins/commands/plugin/command/install.rb:27:in `execute'
    from /usr/share/vagrant/plugins/commands/plugin/command/root.rb:56:in `execute'
    from /usr/lib/ruby/vendor_ruby/vagrant/cli.rb:38:in `execute'
    from /usr/lib/ruby/vendor_ruby/vagrant/environment.rb:484:in `cli'
    from /usr/bin/vagrant:127:in `<main>'
EN

回答 2

Stack Overflow用户

发布于 2016-04-18 05:51:08

似乎流浪汉对Ruby1.9有很强的依赖性(通过ruby -v查看)。

因此,您需要手动安装Ruby2.2,并确保在PATH中首先安装Ruby2.2。然后尝试通过以下方式再次安装该插件:

代码语言:javascript
复制
vagrant plugin install vagrant-aws
票数 0
EN

Stack Overflow用户

发布于 2016-11-18 10:55:35

遇到完全相同的问题。通过从官方下载页面安装最新的流浪汉解决了问题。

正如kenorb所说,ubuntu 14上的流浪汉似乎对ruby1.9有着强烈的依赖。Vagrant官方安装页面也建议不要通过OS包repos来安装vagrant。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33556714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档