停留在旧的Ruby版本(macOS)上

停留在旧的Ruby版本(macOS)上,ruby,macos,homebrew,Ruby,Macos,Homebrew,我一直试图在我的系统上安装ruby,从v2.3.7到v2.7.1,但无论我输入什么命令(更新、安装、rbenv全局等),它都保持旧版本。我认为这是一个旧的安装,在安装新版本时不会被覆盖,但每当我尝试使用“ruby”命令运行某些东西时,它只使用2.3.7安装 这是我所说的一个例子。这是在我尝试卸载所有我能做的全部重新安装之后,但我甚至不知道如何卸载它。然后我尝试升级系统告诉我的ruby版本,但brew找不到 $ruby-v ruby 2.3.7p456(2018-03-28修订版63024)[un

我一直试图在我的系统上安装ruby,从v2.3.7到v2.7.1,但无论我输入什么命令(更新、安装、rbenv全局等),它都保持旧版本。我认为这是一个旧的安装,在安装新版本时不会被覆盖,但每当我尝试使用“ruby”命令运行某些东西时,它只使用2.3.7安装

这是我所说的一个例子。这是在我尝试卸载所有我能做的全部重新安装之后,但我甚至不知道如何卸载它。然后我尝试升级系统告诉我的ruby版本,但brew找不到

$ruby-v

ruby 2.3.7p456(2018-03-28修订版63024)[universal.x86_64-darwin18]

$brew升级ruby

正在更新自制

错误:未安装ruby升级通过自制安装的ruby。“错误:ruby未安装”表示您没有用自制软件安装ruby。自制软件不会升级MacOS附带的Ruby


相反。这将使您的MacOS Ruby独立运行,并自行安装。

您考虑过使用吗?你已经在用它了吗?如果是,您不需要使用
brew
来更新Ruby,您可以直接使用
rbenv
哪个Ruby
会告诉您Ruby的来源。或者它可以让您轻松安装多个版本的Ruby。或者@jazaniac:您提到您使用了
rbenv
,但在你的问题中我看不到任何rbenv命令。我看不出同时使用
rbenv
brew
有什么好处。你应该考虑你的目标:在你的系统上有一个特定版本的Ruby,或者你想在不同版本之间轻松切换。我个人不会接触MacOS附带的版本,但会添加其他版本。解决方案最终是使用rvm,但你也建议了,所以我会检查这个答案。谢谢你的进一步解释。在使用rvm后,我的原生版本还会被破坏吗?还是会完全修复它?@jazaniac
rvm
不会触及MacOS附带的Ruby
rvm
安装在您的主目录中。你的MacOS提供的Ruby没有问题,除非有什么你没告诉我们的,它只是旧的。如果您想在Ruby中开发,请使用rvm版本。将MacOS Ruby视为MacOS的一个组件,不要管它。这适用于Python、Perl、PHP和操作系统附带的任何其他语言。@jazaniac的理解可能会有所帮助。我已经合法地尝试了所有这些命令,ruby版本仍然停留在2.3.7上。我在编辑路径时找到的所有指南也是如此。rvm仍然是唯一有效的工具。