背景
- Ruby LSPが
Gem::MissingSpecErrorで立ち上がらず時間溶かしたので、メモしておく
エラー内容
/Users/user/.rbenv/versions/3.3.4/lib/ruby/3.3.0/rubygems/dependency.rb:301:
in `to_specs': Could not find 'sorbet-runtime' (>= 0.5.10782) among 210 total gem(s)
(Gem::MissingSpecError)
Checked in'GEM_PATH=/Users/user/.gem/ruby/3.3.0:/Users/user/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0',
execute `gem env` for more information
Error starting the server:
Pending response rejected since connection got disposed
問題発生までの経緯
- rbenvでRubyバージョンをインストール:3.3.4
- Railsのバージョンをインストール:7.2.1
- 新しいプロジェクトを立ち上げようとしたらLSPが動かない
原因
- dependency.rbファイル内の
to_specsを呼び出した時に、RubyGemsがsorbet-runtimeというGemを見つけられなかった
dependency.rb
- RubyGemsがGemファイルや依存関係を扱う際に使用するクラスとメソッドを定義しているファイル
解決した経緯
-
Checked in 'GEM_PATH=/Users/user/.gem/ruby/3.3.0:/Users/user/.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0'というエラーを確認する -
.rbenv/versions/3.3.4/lib/ruby/gems/3.3.0'を確認しに行った -
sorbet-runtimeを探したが、ない -
gem install sorbet-runtimeを実行 - LSPが立ち上がる
感想
- VSCodeに出てくるエラーは無視しないで確認した方が良い、めんどくさくて飛ばしがちだけど
- 拡張機能が吐いているエラーをちゃんと読む