You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

卸载RVM安装rbenv后启动Rails项目仍调用RVM报错如何解决

问题根因分析
  1. RVM未完全卸载:仅执行常规卸载操作后,Shell配置文件中仍残留RVM的初始化脚本,RVM的环境变量优先级高于rbenv,导致系统优先加载RVM管理的Ruby 2.6.0环境,而非rbenv下的Ruby 2.6.3
  2. 报错的直接诱因:调用了RVM路径下与项目Ruby版本不兼容的puma gem,启动时绑定端口出现版本适配类的Socket异常
排查修复步骤
  • 彻底删除RVM残留文件
    执行rm -rf ~/.rvm删除RVM所有本地安装资源
  • 清理Shell配置中的RVM脚本
    依次打开~/.bash_profile、~/.bashrc、~/.zshrc、~/.profile四个文件,删除所有包含RVM初始化逻辑的行,常见形式为[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"
  • 确认rbenv配置正确
    检查上述Shell配置文件中是否存在rbenv初始化配置,缺失则添加以下两行:
    export PATH="$HOME/.rbenv/shims:$PATH"
    eval "$(rbenv init -)"
    
    添加后执行source ~/.zshrc(Zsh环境)或source ~/.bash_profile(Bash环境)重载配置,也可以直接重启终端让配置生效
  • 验证Ruby环境切换成功
    依次执行以下命令确认环境正常:
    • which ruby:输出路径需以~/.rbenv/shims/ruby开头,不能出现.rvm相关路径
    • ruby -v:确认输出版本为ruby 2.6.3
    • 进入项目根目录执行rbenv local 2.6.3,固定项目使用的Ruby版本
  • 重新安装项目依赖
    执行gem install bundler && bundle install,将项目依赖的gem安装到rbenv对应2.6.3版本的gem库中
  • 启动服务验证
    执行rails s启动项目,此时不会再调用RVM路径下的资源,报错会自动消除

内容的提问来源于stack exchange,提问作者bazooka720

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 18:06:03