已安装Rails 6的环境下创建Rails 5.2.6项目报错如何解决?
故障根因
你系统同时安装了rvm和rbenv两个Ruby版本管理工具,rbenv的可执行路径优先级更高,导致你执行rvm use 2.7.4后实际调用的还是rbenv管理的Ruby 3.0.0版本,而Rails 5.2.6和Ruby 3.x不兼容,且Ruby 3.0.0环境下没有安装对应版本的railties依赖,因此触发报错。
解决方案
方案一:保留rbenv作为唯一版本管理工具
- 安装Ruby 2.7.4版本:
rbenv install 2.7.4 - 切换当前工作目录的Ruby版本为2.7.4:
rbenv local 2.7.4 - 验证版本切换是否生效,确认输出包含
ruby 2.7.4:ruby -v - 安装对应版本的Rails:
gem install rails -v 5.2.6 - 执行项目创建命令:
rails _5.2.6_ new rpapitest
方案二:保留rvm作为唯一版本管理工具
- 打开当前用户的shell配置文件(通常为
~/.bashrc、~/.zshrc),删除所有rbenv相关的配置条目(常见为export PATH="$HOME/.rbenv/shims:$PATH"、eval "$(rbenv init -)") - 重载shell配置:
source ~/.bashrc(根据你使用的shell调整配置文件名) - 验证rvm切换生效,确认输出包含
ruby 2.7.4:rvm use 2.7.4ruby -v - 安装对应版本的Rails:
gem install rails -v 5.2.6 - 执行项目创建命令:
rails _5.2.6_ new rpapitest
注意事项
- 同一操作系统建议只保留一个Ruby版本管理工具,避免出现路径优先级冲突
- Rails 5.2.x系列最高兼容Ruby 2.7.x版本,无法在Ruby 3.x环境下运行
内容的提问来源于stack exchange,提问作者Stefan
相关产品推荐
相关产品推荐

