RVM不会切换Rubies

Eva*_*ell 20 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
Run Code Online (Sandbox Code Playgroud)

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

Shu*_*huo 25

刚遇到同样的问题.

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

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

然后重启终端.


Sut*_*tto 17

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

  • Lichtamberg:当它是root时,你从/ usr/local/rvm/scripts/rvm和$ HOME/.rvm/scripts/rvm中获取源代码 - 只需更改源代码行就可以匹配Evan所做的那样. (10认同)
  • 该命令吐出"rvm是/ usr/local/bin/rvm"而不是"rvm是一个函数",但是,我的.bashrc文件似乎按照安装指南正确设置.我会检查irc频道,谢谢. (2认同)

ger*_*nux 12

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

在rvm开关操作之前.我在我的个人资料文件中添加了这一行,现在一切正常.