Apple芯片Mac无法运行Rails:已安装却无法检测的修复请求
Apple芯片MacBook中Rails无法被检测到的解决方法
问题核心是系统自带的/usr/bin/rails优先级高于你通过gem安装的Rails,导致终端调用了旧的系统版本,而非你安装的版本。按以下步骤解决:
第一步:确认gem安装的Rails实际位置
运行命令查看Rails的gem安装路径:gem which rails输出示例:
/Users/xxx/.gem/ruby/3.2.0/gems/rails-7.0.4/lib/rails.rb,对应的可执行文件目录为该路径向上定位到bin文件夹,即/Users/xxx/.gem/ruby/3.2.0/bin第二步:检查PATH环境变量
运行命令查看当前PATH:echo $PATH若第一步得到的
bin目录不在PATH中,或者在/usr/bin之后,就会优先调用系统自带的Rails。第三步:临时修复(当前终端会话生效)
将gem的bin目录添加到PATH最前端:export PATH="/Users/你的用户名/.gem/ruby/3.2.0/bin:$PATH"替换
你的用户名为实际用户名,然后运行rails -v验证是否能正常显示版本。第四步:永久修复(所有终端会话生效)
Apple芯片Mac默认使用zsh,编辑zsh配置文件:open -e ~/.zshrc在文件末尾添加一行:
export PATH="/Users/你的用户名/.gem/ruby/3.2.0/bin:$PATH"保存后,运行以下命令让配置生效:
source ~/.zshrc
注意事项:
- 不要用
sudo gem install rails,避免权限问题,直接执行gem install rails即可安装到用户专属的gem目录。 - 如果你是通过Homebrew安装的Ruby,gem的bin路径可能是
/opt/homebrew/lib/ruby/gems/3.2.0/bin,需要对应替换上述路径。
内容的提问来源于stack exchange,提问作者Kuldeep Yadav
相关产品推荐
相关产品推荐

