タイトルが長いですが、状況は以下の通り
・Visual Studio Codeでワークスペースに複数のGoプロジェクトを追加している
・importでパッケージが読み込めず、赤いエラーが表示されている
・ビルド自体は行うことができ、プログラムは正常に動作する
Go 1.18以降であれば、workspaceモードを利用する
VS Codeの拡張機能「gopls」の公式ヘルプでは以下の解決策が提示されていました
https://github.com/golang/tools/blob/master/gopls/doc/workspace.md
Go 1.18以降であればworkspaceモードを利用することで上記の現象は回避できるとのこと
早速設定してみます
今回のディレクトリ構成について
現在作成しているアプリは以下のようなディレクトリ構成になっています
RIDEという親ディレクトリがあり、その下にマイクロサービスごとにディレクトリを作成し、マイクロサービスごとにgo.modが存在している状態です
ターミナルで「RIDE」ディレクトリ配下に移動し、以下のコマンドを実行
go work init
go work use ./RIDE-Rider
go work use ./RIDE-Content
go.workファイルは以下の様になりました
go 1.20
use (
./RIDE-Content
./RIDE-Rider
)
VS Codeの状態を確認してみる
importセクションのエラーが消え、パスを正しく認識していることが確認できました
コード補完も正しく動作するようになりました。これで開発効率も上がりそうです
以上
ということで、VS CodeでGoを利用した開発を行う時に発生した問題についての解決方法を紹介させていただきました。
VS Codeのワークスペースで複数プロジェクトを管理できたほうが開発も行いやすくなりますが、Goでimportを正しく認識しなくなる問題に悩まされていました
今回Goのworkspaceモードを利用することで解決できることがわかりました
同じような問題で悩んでいる方がいたら、この情報が役に立てれば幸いです
created by Rinker
¥3,960
(2024/10/27 13:52:05時点 楽天市場調べ-詳細)
created by Rinker
¥3,278
(2024/10/27 14:11:47時点 楽天市場調べ-詳細)