系统无法识别使用 RVM 设置的默认 Ruby 版本

系统无法识别使用 RVM 设置的默认 Ruby 版本

我正在尝试让系统使用我通过 RVM 设置的 Ruby 版本。以下命令产生此输出:

$ rvm use 1.9.2 --default
Using /usr/share/ruby-rvm/gems/ruby-1.9.2-p180
$ rvm current
ruby-1.9.2-p180
$ ruby --version
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

这是我的 PATH 的内容: PATH=/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

还:

$ whereis ruby
ruby: /usr/bin/ruby /usr/bin/ruby1.8 /usr/lib/ruby /usr/share/man/man1/ruby.1.gz
$ whereis rvm
rvm: /usr/bin/rvm /usr/share/man/man1/rvm.1.gz

我认为这是一个环境变量的问题,但我真的不知道除此之外还能做些什么。

我试过了rvm systemrvm listrvm current只列出了 1.9.2,ruby --version仍然列出了 1.8.7

我也尝试过添加export /usr/share/ruby-rvm/gems/ruby-1.9.2-p180:$PATH到 .bashrc,然后重新启动,但仍然如此。

答案1

ruby-1.9.2../bin 路径需要位于 PATH 中任何其他 ruby​​ 的前面。rvm use 1.9.2 应该将其放在那里,不确定为什么不放在那里。我的略有不同,因为我使用私有 rvm 安装(在我的 ~/ 中)

也许这会对你有帮助:

jeremy@octavian:~$ rvm use 1.9.2
Using /home/jeremy/.rvm/gems/ruby-1.9.2-p290
jeremy@octavian:~$ ruby --version
ruby 1.9.2p290 (2011-07-09 revision 32553) [i686-linux]
jeremy@octavian:~$ which ruby
/home/jeremy/.rvm/rubies/ruby-1.9.2-p290/bin/ruby
jeremy@octavian:~$ echo $PATH
/home/jeremy/.rvm/gems/ruby-1.9.2-p290/bin:/home/jeremy/.rvm/gems/ruby-1.9.2-p290@global/bin:/home/jeremy/.rvm/rubies/ruby-1.9.2-p290/bin:/home/jeremy/.rvm/bin:/usr/lib/lightdm/lightdm:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

相关内容