VS Code的Ruby LSP扩展无法启动且识别错误Ruby版本求助
Ruby LSP启动版本错误与代码跳转失效问题
问题描述
已安装Ruby LSP扩展,配置如下:
{ "ruby.useLanguageServer": true, "ruby.intellisense": "rubyLocate", "workbench.colorTheme": "Spinel" }
出现两个问题:
cmd + click无法跳转至代码定义- 启动Ruby LSP时报错:
Command Ruby LSP Start resulted in an error The Ruby LSP requires Ruby 3.0 or newer to run. This project is using 2.6.10
但本地全局Ruby版本为:
ruby -v ruby 3.1.3p185 (2022-11-24 revision 1a6b16756e) [arm64-darwin22]
解决方法
1. 检查项目实际使用的Ruby版本
全局版本和项目本地版本可能因版本管理器(如rbenv、rvm)存在差异:
- 进入项目根目录,执行
ruby -v查看当前生效的版本 - 检查项目根目录是否存在
.ruby-version文件,或Gemfile中是否指定了ruby '2.6.10',这类配置会强制项目使用对应版本
2. 升级项目Ruby版本配置
若项目允许升级到3.0+版本:
- 修改
.ruby-version内容为3.1.3(或其他兼容的3.0+版本) - 更新
Gemfile中的Ruby版本声明为ruby '3.1.3',执行bundle install - 重启VS Code,让Ruby LSP重新识别版本
3. 强制VS Code使用全局Ruby版本
若无需修改项目配置,可直接指定VS Code使用全局Ruby:
- 打开VS Code设置,搜索
ruby.rubyPath - 将值设置为全局Ruby的路径(可通过
which ruby命令获取,比如/usr/local/bin/ruby) - 重启VS Code后重新启动Ruby LSP
4. 重置Ruby LSP扩展
- 打开VS Code扩展面板,找到Ruby LSP,点击齿轮图标选择「重新加载窗口」
- 或通过命令面板(
cmd + shift + P)执行「Ruby LSP: Restart Server」命令
内容的提问来源于stack exchange,提问作者Petran
相关产品推荐
相关产品推荐

