Help us understand the problem. What is going on with this article?

[Visual Studio Code][Golang][Windows] VSCodeでGoの開発環境を作成する方法まとめ

More than 3 years have passed since last update.

VSCodeでGoの開発環境を作成する方法メモ

感覚的にはほとんど苦労せずにコード補完、デバッグも含めた環境を作成できました。
(Vimでの設定時はけっこう苦労したんですが、VSCodeはサポート手厚いですね・・・)

検証環境

  • Windows10 64bit
  • Visual Studio Code 1.10.2
  • Go 1.8
  • Git for Windows 2.12.0

前提

Visual Studio Code

VSCodeをインストールします。

Visual Studio Code - Code Editing. Redefined

Git for Windows

go get などで使用されるため、Gitをインストールします。

以下の画面で真ん中の選択肢を選んで、コマンドプロンプトからのgitコマンドの実行ができるようにするのをおすすめします。(VSCodeの端末がPowerShellのため)

2.png

Go のインストール

Go の Windows 向けのものをインストールします。

Downloads - The Go Programming Language

環境変数にGOPATHを追加

以下は設定例

環境変数名 備考
GOPATH %USERPROFILE%\go 左は設定なしの場合のインストールされるデフォルト値
PATH %USERPROFILE%\go\bin 既存のものに追加、GOPATHに合わせる

Visual Studio Codeの拡張機能を導入

拡張機能本体のインストール

同名の拡張機能がありますが、2番めのアイコン付きの方をインストールします。

1.png

拡張機能から使われるGoのパッケージのインストール

READMEのしたのほうにも書いてありますが、依存パッケージをインストールします。
もし、Go環境をアップデートした場合は以下のパッケージも合わせてアップデートするのをおすすめします。

開発用Goの依存パッケージのインストール
go get -u -v github.com/nsf/gocode
go get -u -v github.com/rogpeppe/godef
go get -u -v github.com/zmb3/gogetdoc
go get -u -v github.com/golang/lint/golint
go get -u -v github.com/lukehoban/go-outline
go get -u -v sourcegraph.com/sqs/goreturns
go get -u -v golang.org/x/tools/cmd/gorename
go get -u -v github.com/tpng/gopkgs
go get -u -v github.com/newhook/go-symbols
go get -u -v golang.org/x/tools/cmd/guru
go get -u -v github.com/cweill/gotests/...

デバッグ用のDELVEのインストール

古い記事だと証明書などの手順がありますが、今はWindowsでは go get からで良いようです。

DELVEのインストール
go get github.com/derekparker/delve/cmd/dlv

delve/install.md at master · derekparker/delve

動作確認

パッケージ補完

1.png

メソッド補完

2.png

ブレークポイントを設定したデバッグ

3.png

だいたい動作したので環境作成としては以上です。(何かあれば追記します)
その他の使用方法などは、拡張機能のREADMEを参照してください。

Go - Visual Studio Marketplace

参考

WindowsのVisual Studio CodeでGo言語の開発環境を作る - 素敵なおひげですね
Visual Studio CodeによるGo言語のデバッグ | Developers.IO

koara-local
言語は最近は C#, Javaあたりがメイン。端末VimからIDEに移行。IntelliJすごい。Qiitaでの記事やその中の主張は、所属している企業/団体の意見を代表するものではありません。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした