即使 rbenv 已更新,root 版本的 ruby 也未安装在终端中

问题描述 投票:0回答:1

我正在尝试更新我的 ruby 根版本。根目录似乎没有更新。即使通过 homebrew 或 rbenv 安装 ruby - ruby 也会更新,但运行 ruby -v 仍保持在 2.6 版本。我担心主要根源是错误的,我想知道如何解决这个问题。

运行此命令将获得以下输出:

红宝石-v

ruby 2.6.10p210(2022-04-12 修订版 67958) [通用.arm64e-darwin23]

运行此命令将获得以下输出:

rbenv版本:

3.3.0(由/Users/ninajay/.ruby-version设置)

运行此命令将获得以下输出:

导出 PATH="/opt/homebrew/opt/ruby/bin:$PATH"

红宝石-v

ruby 3.3.0(2023-12-25 修订版 5124f9ac75)[arm64-darwin23]

另外,当我运行此命令时,以下是我的路径:

环境 | grep 路径

PATH=/Users/ninajay/opt/miniconda3/bin:/Users/ninajay/opt/miniconda3/condabin:/Library/Frameworks/Python.framework/Versions/3.12/bin:/Library/Frameworks/Python.framework/Versions /3.10/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin: /sbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin :/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin:/Library/Apple/usr/bin:/usr/local/share/dotnet:~/.dotnet/tools

ruby rbenv
1个回答
0
投票

您不想更新 Ruby 的“root”版本。

由于您使用的是 Mac,因此您在路径

/usr/bin/ruby
处预装了 Ruby 版本。如果有的话,这是您的 Ruby 的“root”版本。更新此问题的唯一好方法是更新 macOS,并希望 Apple 为您更新 Ruby。

如果您通过 homebrew、rbenv、rvm 或其他方式安装 Ruby,那么它是完全独立的 Ruby 安装。例如,它可能位于

/opt/homebrew/bin/ruby
~/.rbenv/versions/3.1.2/bin/ruby

问题是:当您在 shell 中输入

ruby
时,您希望它运行哪一个以及让它运行的最佳方法是什么?

首先,您要运行 rbenv 版本。 rbenv 的全部意义在于,它可以让您随时轻松更新 ruby,并随意切换版本。这意味着您希望

ruby
运行
~/.rbenv/shims/ruby
。您可以直接运行以下命令来手动检查 rbenv 是否安装了您想要的版本:

~/.rbenv/shims/ruby -v

现在让

ruby
运行该版本的最佳方法是什么?阅读“配置您的 shell 加载 rbenv”下的您的 shell 的说明。这通常涉及在您的 shell 配置中添加像
eval "$(~/.rbenv/bin/rbenv init - bash)"
这样的行,但这取决于您使用的特定 shell。同样,您可以通过运行来手动测试它

rbenv init
ruby -v

如果运行

ruby
做了一些您意想不到的事情,您也可以运行
type -a ruby
来查看您的 shell 可以运行的所有可能的事情(按优先级顺序)。如果某些配置错误而运行错误,这可以帮助您进行调试。

© www.soinside.com 2019 - 2024. All rights reserved.