gb環境下で定義ジャンプができない?
普段はVisualStudioCodeを使ってGolangの開発を行っているのですが
定義へジャンプができないことがありました。
gbを使ってビルドしており、ライブラリなどはプロジェクト直下のvendor/に配置されます。
このvendor内のソースへジャンプできないようです。。。
ググったところ以下の記事を見つけたので、やっていたところ上手くジャンプできるようになりました。
https://github.com/Microsoft/vscode-go/issues/249
https://github.com/Microsoft/vscode-go/issues/650
やったことは、VisualStudioCodeのGopathの指定を見直し、vendorもGopathに追加しました。
やり方としては、[Preferences] - [Settings] - [Extensions] - [Go configurations] - [Gopath]で
[Edit in settings]をクリックします。
設定のためのjsonフォーマットが表示され、右の[USER SETTINGS]か[WORKSPACE SETTINGS]に
"go.gopath": 対象のプロジェクトのパス/vendor"
を追記します。
gbを使っているのが一つのプロジェクトだけなら、プロジェクト毎の設定となる[WORKSPACE SETTINGS]でいいでしょう。
逆にgbを複数のプロジェクトで使っているのなら、ユーザで共通の設定となる[USER SETTINGS]に書けばいいと思います。
この場合はプロジェクトに動的に適用されるよう、以下のように記述します。
"go.gopath": "${workspaceRoot}:${workspaceRoot}/vendor"