Mac(M1)安装Jekyll时无法切换指定Ruby版本问题求助
解决方案
第一步:确认Homebrew安装的Ruby实际路径
先执行命令核查安装信息,排除路径写错的问题:
- 运行
brew info ruby,查看输出里的二进制文件路径:Intel架构Mac默认路径为/usr/local/opt/ruby/bin,M系列ARM架构Mac默认路径为/opt/homebrew/opt/ruby/bin,架构不匹配会直接导致配置失效 - 确认实际安装的Ruby大版本号,如果你之前填写的gem路径版本和实际安装版本不一致,也会导致配置不生效
第二步:修正.zshrc配置
按如下步骤更新配置:
- 打开.zshrc文件:
open ~/.zshrc - 删除你之前添加的错误PATH行,替换为对应架构的通用配置,避免写死版本号导致后续版本更新失效:
- Intel架构Mac配置:
export PATH="/usr/local/opt/ruby/bin:$PATH" export GEM_HOME="$HOME/.gem" export PATH="$GEM_HOME/bin:$PATH"- M系列ARM架构Mac配置:
export PATH="/opt/homebrew/opt/ruby/bin:$PATH" export GEM_HOME="$HOME/.gem" export PATH="$GEM_HOME/bin:$PATH" - 保存文件后执行
source ~/.zshrc让配置立即生效,无需重启终端
第三步:验证配置生效
执行ruby -v确认已切换到Homebrew安装的新版本,再执行which ruby,输出应对应你配置的路径,而非系统默认的/usr/bin/ruby
rbenv方案补充
如果要使用rbenv管理Ruby版本,之前配置失效是因为没有添加初始化脚本到.zshrc,将以下两行添加到.zshrc末尾再执行source ~/.zshrc即可:
export PATH="$HOME/.rbenv/bin:$PATH" eval "$(rbenv init - zsh)"
配置完成后即可正常切换rbenv安装的Ruby版本,安装gem不会再触发系统权限报错。
内容的提问来源于stack exchange,提问作者Jvet
相关产品推荐
相关产品推荐

