RVM不会切换Rubies

时间:2010-07-18 19:38:52

标签: ruby rvm

我在CentOS上运行Ruby 1.9.1p243,我决定安装rvm来处理升级到1.9.2或降级到1.8.7(无论哪个更适合rails3)。

我按照此处的说明操作:http://rvm.beginrescueend.com/rvm/install/并正确安装了所有内容。我能够编译和安装Ruby 1.8.7,1.9.1和1.9.2。

但是,如果我尝试实际切换到其中一个rvm安装的Rubies,例如rvm使用1.8.7,则无效。我的系统仍然使用我在/ usr / local / bin / ruby​​中安装的Ruby。

我得到的输出示例:

$ rvm use 1.8.7
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby
$ rvm use 1.9.2
$ ruby -v
ruby 1.9.1p243 (2009-07-16 revision 24175) [i686-linux]
$ which ruby
/usr/local/bin/ruby

我不知道为什么会这样,我似乎也无法在网上找到任何关于这个问题的信息。任何帮助将不胜感激。

5 个答案:

答案 0 :(得分:25)

刚遇到同样的问题。

不是将以下脚本附加到〜/ .bash_profile ,而是将其附加到〜/ .bashrc

[[ -s "$HOME/.rvm/scripts/rvm" ]] && . "$HOME/.rvm/scripts/rvm" # This loads RVM into a shell session.

然后重新启动终端。

答案 1 :(得分:17)

通常rvm支持最容易通过IRC(freenode上的#rvm) - 在这种特殊情况下,运行“type rvm | head -n1”会显示什么?它应该显示“rvm是一个函数”。如果不是,这意味着源rvm的行没有正确运行,因此切换不起作用。通常这意味着您要么在〜/ .bashrc中有一个返回,要么您错过了将该行添加到源rvm。

答案 2 :(得分:12)

您的安装是root帐户。 在shell中试试这个  [[-s“/ usr / local / rvm / scripts / rvm”]]&& 。 “在/ usr /本地/ RVM /脚本/ RVM”

在rvm切换操作之前

。我在我的个人资料文件中添加了这一行,现在一切正常。

答案 3 :(得分:0)

可能是终端和终端的问题 你应该试着关闭终端的窗口 并打开一个新的。 :) 再试一次,看看它是否已经改变......

答案 4 :(得分:0)

我一直在努力设置默认的rvm ruby​​无济于事,直到我试过这个:

sudo bash -l -c 'rvm alias create default ruby-1.9.3-p392'

"的须藤"用于写入 / usr / local / rvm / config / alias (在我的示例中它将包含" default = ruby​​-1.9.3-p392")
&#34; bash -l <​​/ strong>&#34;是确保它运行登录shell的所有脚本(/ etc / profile,/ etc / bash.bashrc等)