旧版RubyMine 7.1.4搭配新版Rails运行时报No Rails found in SDK如何解决?
问题根因与适配方案
RubyMine 7.1.4 发布于2015年,内置的Rails版本检测逻辑仅适配Ruby 2.x、Rails 4.x及更早版本,无法识别Ruby 3.0、Rails 6.1的gem加载规则与版本标识,才会出现命令行可正常启动Rails、但IDE报错「No Rails found in SDK」的问题。
可行适配方案
- 手动指定启动脚本绕过检测
打开项目的运行配置界面,将默认的Rails类型运行配置改为Ruby类型,脚本路径选择项目根目录下的bin/rails文件,执行参数填写server,工作目录指定为当前项目根目录,SDK选择已配置的Ruby 3.0.2即可。此方法绕开了IDE自带的Rails存在性校验,直接调用项目本地的Rails脚本,除部分Rails专属的代码补全、框架快捷跳转功能不可用外,启动、调试功能均可正常使用。 - 手动添加gem路径触发识别
进入Ruby SDK配置页的「Gems」标签,手动添加Ruby 3.0.2对应的两个gem安装目录:- 当前用户目录下的gem路径:
C:\Users\你的用户名\.gem\ruby\3.0.0 - Ruby安装目录下的全局gem路径:
你的Ruby安装目录\lib\ruby\gems\3.0.0
添加后重启RubyMine,重新在项目设置中选中该SDK,等待IDE完成gem索引后即可识别到Rails。
- 当前用户目录下的gem路径:
- 降级Ruby和Rails版本
若需使用RubyMine 7.1.4的完整Rails开发功能,可将Ruby版本降至2.2.x、Rails版本降至4.2.x,二者为RubyMine 7.1.4原生支持的最高版本,不存在兼容性问题。
升级说明
若以上适配方案均无法满足开发需求,可升级到2021.2及之后版本的RubyMine,该版本开始原生支持Ruby 3.0及Rails 6.1的全功能适配。
内容的提问来源于stack exchange,提问作者Paul
相关产品推荐
相关产品推荐

