如何从使用 MacOS 附带的 Ruby 版本切换到使用 Homebrew 下载的最新版本的 Ruby?
我的 MacOS 版本似乎已经在
ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin18]
的系统中安装了 usr/bin/ruby
。我尝试运行 brew install ruby
来获取最新版本的 Ruby,但是当我运行 ruby -v
时,会显示相同的旧版本。我想我可能必须将其添加到我的路径中,所以我转到我的~/.bash_profile
并添加了
export PATH="/usr/local/Cellar/ruby/2.6.1/bin/ruby:$PATH"
但仍然
ruby -v
显示旧版本。我关闭了终端,重新打开了终端,运行了source ~/.bash_profile
,但没有运气。
找出我的错误。
export PATH="/usr/local/Cellar/ruby/2.6.1/bin/ruby:$PATH"
应该是
export PATH="/usr/local/Cellar/ruby/2.6.1/bin:$PATH"
然后就跑
source ~/.bash_profile
并用
ruby -v
或 type -a ruby
确认
@prettycoder 的回答几乎对我有用。我还需要做一个
rbenv init
才能在运行时获得正确版本的 ruby ruby -v
:
brew install rbenv
brew upgrade ruby-build
rbenv install 2.6.5
rbenv global 2.6.5
or
rbenv local 2.6.5
rbenv init
我建议使用版本管理器,例如
rbenv
brew install rbenv
brew upgrade ruby-build
rbenv install 2.6.1
rbenv global 2.6.1
or
rbenv local 2.6.1
有关 rbenv 的详细信息请参见:https://github.com/rbenv/rbenv
而不是
export PATH="/usr/local/Cellar/ruby/2.6.1/bin:$PATH"
用这个比较好
export PATH="/usr/local/opt/ruby/bin:$PATH"
这是
../Cellar/ruby/2.6.1
的符号链接。您可以使用 readlink
来打印它。
那么你就不用担心升级ruby了。
对于M1/苹果硅用户:
根据 3.2.2.1 版本的官方 ruby 公式警告:
If you need to have ruby first in your PATH, run:
echo 'export PATH="/opt/homebrew/opt/ruby/bin:$PATH"' >> ~/.zshrc
^ 可以适应您使用的任何 shell。 这解决了我的问题,我的红宝石从
/usr/bin/ruby
变为 /opt/homebrew/opt/ruby/bin/ruby
,这是正确的版本。