フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

asdfでVScodeからGoとかが読み込めなくなった場合

f:id:lirlia:20210729115122p:plain

Goを使おうと思った時にこんな内容が出た時の話です。

Error: Error: Cannot find "go" binary. Update PATH or GOROOT appropriately asdf

問題としてはasdfで作成したShimへのパスがVScode側で読み取られていないことが問題です。解決策は以下に記載の通りです。

大きく分けるとふたつやり方があって

  1. VScodeを終了し、Terminalからcodeコマンドで起動する(TerminalからENVを引き継ぐ)
  2. Cmake拡張を使って、PATH変数を引き継ぐ

1の場合は、GUI操作で起動するとPATHが読み込まれないようなのでCmakeを入れるのが良いかなと思います。

以下はCMakeの設定をsetting.jsonに追加する例です。

    "cmake.environment": {
        "PATH": "${env:PATH}"
    },