我将 Ruby 升级到 2.5.0 版,当我 运行 ruby -v 它仍然显示旧版本

I upgraded Ruby to version 2.5.0 and when i run ruby -v it still shows an older version

我按照这些说明使用 rbenv 从 2.2.3 升级了 ruby

$ brew update
$ brew install ruby-build
$ brew install rbenv
$ rbenv install 2.5.0
$ rbenv global 2.5.0
$ rbenv local 2.5.0

我重新启动了我的终端和我的电脑,但是当我 运行

ruby -v

这表明我有

ruby 2.2.3p173 (2015-08-18 revision 51636) [x86_64-darwin14]

当我 运行 rbenv 版本

  system
  2.4.0
  2.5.0 (set by /Users/****/.ruby-version)

它甚至没有显示这个版本,我一直在想我必须做些什么才能将其更改为指向正确的版本。

当我运行

$echo $PATH

显示

-bash: /usr/local/opt/imagemagick@6/bin:/Users/****/.rvm/gems/ruby-2.2.3/bin:/Users/****/.rvm/gems/ruby-2.2.3@global/bin:/Users/****/.rvm/rubies/ruby-2.2.3/bin:/Users/****/anaconda/bin:/Library/Frameworks/Python.framework/Versions/3.4/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/****/.rvm/bin: No such file or directory

从你的路径看来,你正在使用 rvm。我认为 rvmrbenv 不应该在同一个系统上同时激活。如果您打算使用 rbenv,我建议您禁用 rvm。你不需要删除包含rvm的红宝石,宝石等的.rvm目录,你只需要停止加载rvm shell代码终端 window 启动。为此,请禁用或删除 .bashrc.profile.bash_profile.zshrc 等中与 rvm 相关的代码,并使用新终端 window 删除后启动。

我怀疑 Ruby 的 2.2.3 版本就是您在列表中看到的 system。如果你做一个 which ruby,你可以看到它的位置,这将是一个线索;如果是/usr/bin/ruby,那么就是系统Ruby.

顺便说一句,您可以使用以下命令逐行获取 PATH 中的目录列表:

echo $PATH | tr : \n

这比包含所有目录的长行更容易理解。