36

我正在运行 Ubuntu 12.04 LTS,并通过 RVM 安装了 Ruby。

问题是,当我ruby -v在终端中输入时,它说我的 Ruby 版本是1.8.7,并且使用 Sinatra 的霰弹枪 gem 还说我正在运行 Ruby 1.8.7

但是当我输入rvm list它时,它显示我安装的唯一版本的 Ruby2.0.0是我当前的默认版本。

我通过 RVM 安装了 Ruby 2.0.0,它是我在我的机器上安装的唯一版本。

现在,当我尝试安装 Rails 4 但收到错误消息说我需要 Ruby 1.9 或更高版本时。

我怎么知道我真正使用的是哪个版本,以及如何设置2.0.0为我的唯一版本?

4

4 回答 4

24

在您的终端上,尝试运行:

which -a ruby

这将在 PATH 中输出系统上所有已安装的 Ruby 版本(通过 RVM 或其他方式)。如果 1.8.7 是您的系统 Ruby 版本,您可以使用以下命令卸载系统 Ruby:

sudo apt-get purge ruby

一旦你确定你已经通过 RVM 单独安装了 Ruby,login你可以在你的 shell 中输入:

rvm --default use 2.0.0

如果您只安装了一个 Ruby 版本,则不需要这样做。

如果您仍然遇到任何系统 Ruby 文件的问题,请尝试运行:

dpkg-query -l '*ruby*'

这将输出一堆与 Ruby 相关的文件和包,这些文件和包已经或曾经安装在系统级别的系统上。检查每个的状态以查找它们中的任何一个是否是本机的并导致问题。

于 2013-08-31T20:05:39.740 回答
12

运行此命令:

rvm get stable --auto-dotfiles

并确保阅读所有输出。RVM会告诉你是否有问题,在你的情况下可能是因为GEM_HOME设置为不同的 then PATH

于 2013-08-31T17:50:26.737 回答
7

ruby 版本 1.8.7 似乎是您的系统 ruby​​。

通常你可以选择你想要的 ruby​​ 版本,如果你使用 rvm 和以下。在新终端中简单地切换到您的目录并输入:

rvm use 2.0.0

您可以在此处找到有关 rvm 的更多详细信息:http ://rvm.io 打开网站并向下滚动,您会看到一些有用的链接。例如,“设置默认红宝石”可以帮助您。

更新: 要将 ruby​​ 设置为默认值:

rvm use 2.0.0 --default
于 2013-08-31T14:26:41.050 回答
1

如果您可以访问正在调查的上下文中的控制台,则可以通过打印全局常量的值来确定您正在运行的版本RUBY_VERSION

于 2019-04-15T23:39:49.027 回答