在 Ubuntu 上安装 Ruby 2.2.3

Installing Ruby 2.2.3 on Ubuntu

对于长期在linux上使用Ruby的人来说,这个问题可能有一个明显的答案,但我无法通过Google真正得到一个好的答案。

我正在尝试查看 Rails 5 beta,它需要 Ruby 2.2.2 或更高版本。我已经安装了 RVM(Ruby 版本管理器)并将我的 ruby 版本设置为 2.2.3。 运行 rvm list 在终端中产生以下输出:

rvm rubies

=* ruby-2.2.3 [ x86_64 ]

# => - current
# =* - current && default
#  * - default

好的,很好。我安装了 Ruby 2.2.3。让我们试试 bundle update:

Installing rack 2.0.0.alpha (was 1.6.4)

Gem::InstallError: rack requires Ruby version >= 2.2.2.

好吧,这很奇怪。我有什么版本的 ruby? 运行 ruby -v 给我这个:

ruby 2.1.5p273 (2014-11-13) [x86_64-linux-gnu]

所以...我有没有 2.2.3?给出了什么?

由于您使用的是 bundle,我建议您检查 Gemfile 的 ruby 版本。您也可以使用 bundle exec ruby -v

进行测试

也试试:

rvm use ruby-2.2.3
bundle exec ruby -v

也许通过将 rvm 上的默认 Ruby 版本设置为您拥有的版本 (ruby-2.2.3) 可以解决问题,方法是 rvm --default use ruby-2.2.3。然后重新加载 bash 并执行 ruby -v 以检查 Ruby 的默认版本是否已正确更改,然后再次尝试执行 bundle install 命令。

如果你不知道zshoh-my-zsh,我强烈推荐这种东西。您可以配置终端,以便向您显示您每时每刻都在使用的 Ruby 和 Rails 的当前版本。在这里查看:http://ohmyz.sh/

除了执行 rvm use --default 2.2.3rvm use 2.2.3 之外,请确保您没有安装来自 apt(或任何包管理器)的 ruby 包。出于某种原因,ruby 包可能优先于 RVM Ruby。

另外,尝试 rvm uninstall 2.1.5 强制您的系统默认为 2.2.3...您以后可以随时重新安装 2.1.5,如果此问题仍然存在,2.2.3 应该保持为默认值.