2

我正在阅读本教程,但我已经安装了 Ruby 1.8.7。我需要 1.9.2/1.9.3 版本。

我开始使用 RVM。

$ rvm list rubies
rvm rubies
    ruby-1.8.7-p358 [ x86_64 ]
    ruby-1.9.2-p318 [ x86_64 ]
=*  ruby-1.9.2-p320 [ x86_64 ]
    ruby-1.9.3-p194 [ x86_64 ]

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

但如果我运行ruby -v它仍然返回 1.8.7。

$ ruby -v
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

其他返回值:

$ whereis ruby
ruby: /usr/bin/ruby /usr/bin/ruby1.8 /usr/lib/ruby /usr/share/man/man1/ruby.1.gz
$ which rails
/usr/local/bin/rails
$ which ruby
/usr/bin/ruby
4

2 回答 2

1

当您键入时ruby,您仍在点击系统红宝石,而不是 rvm 红宝石。

您是否遵循此处的所有指示:https ://rvm.io//rvm/install/ ?

看起来您正在运行 Linux ——您在 rvm 安装文档中看到此部分了吗?

If you open a new shell and running:

$ type rvm | head -1
does not show "rvm is a function", RVM isn't being sourced correctly.

Ensure that RVM is sourced after any path settings as RVM and manipulates the path. If you don't do this, RVM may not work as expected.

If you are using GNOME on Red Hat, CentOS or Fedora, ensure that the Run command as login shell option is checked under the Title and Command tab in Profile Preferences. After changing this setting, you may need to exit your console session and start a new one before the changes take affect.

此外,在您打开控制台会话时,rvm向您的文件添加一些行以将.bashrc其自身加载到内存中。看起来这可能是您的问题。

例如,在我.bashrc的 中,rvm插入了以下内容:

export PATH=/opt/local/bin:/opt/local/sbin:/opt/local/lib/postgresql84/bin:$PATH
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"  # This loads RVM into a shell session.
PATH=$PATH:$HOME/.rvm/bin # Add RVM to PATH for scripting

你的有类似的吗?此外,如果您使用的是 z-shell,您可能需要执行安装文档中列出的一些额外步骤。

于 2012-06-24T10:57:02.657 回答
0

尝试

$ rvm use ruby-1.9.2-p320

然后

$ ruby -v

这会返回什么?

这应该在当前控制台中将您的 ruby​​ 版本更改为 ruby​​-1.9.2-p320 ,如果您希望在每个新打开的终端上使用它,您可以使用 --default 选项

尝试

$ rvm --default use ruby-1.9.2-p320

然后

$ruby -v

应该在当前和每个打开的新窗口终端中返回 ruby​​-1.9.2-p320 版本。任何时候你想回到你的系统 ruby​​ 安装使用

$ rvm use system
于 2012-06-24T11:11:31.153 回答