Featured image of post WSL2でcodeコマンドがWSLリモートで開かれない問題を解決したときのメモ

WSL2でcodeコマンドがWSLリモートで開かれない問題を解決したときのメモ

起きていた問題 Link to this heading

WSL2内でcodeコマンドを実行してVS Codeを起動すると、WSL内のオープンにならず、\\wsl.localhost\Ubuntu-24.04\home\userのようなパスで開かれてしまう問題が起きていた。 そのため、毎回VS Code内で「Reopen Folder in WSL」を実行しなければならなかった。

原因 Link to this heading

WSL内のcodeコマンドが/mnt/c/Program Files/Microsoft VS Code/bin/codeに解決されている場合、まずVS CodeのCLIにWSL拡張のインストール場所を問い合わせ、それが見つかればWSLリモートで開き、見つからなければWindowsのCode.exeで開くという挙動をしていた。そのため、VS CodeのCLIからWSL拡張のインストール場所を見つけられないことが問題の原因だった。

WSL拡張の実体はWindows側のフォルダ(C:\Users\<ユーザー名>\.vscode\extensions)に存在していたが、VS CodeのCLIは既定プロファイルの拡張フォルダ1しか見ていないらしい。そのため、特定のプロファイルでWSL拡張を入れていても、既定のプロファイルにWSL拡張が入っていなければ、WSLからcodeコマンドで起動した場合にWSL拡張を見つけられない。

対処 Link to this heading

対処は簡単で、既定のプロファイルにWSL拡張をインストールすれば解決する。


  1. 具体的にはC:\Users\<ユーザー名>\.vscode\extensions\extensions.jsonのみを参照している。 ↩︎

Licensed under CC BY-NC-SA 4.0
最終更新 2026/09/24
Hugo で構築されています。
テーマ StackJimmy によって設計されています。