我在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
我不知道为什么会这样,我似乎也无法在网上找到任何关于这个问题的信息。任何帮助将不胜感激。
答案 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等)