Go.modの使い方


GOPATHを使っているとimport出来ないライブラリとか出てきて変なエラーが出てくる事があると思います。
GoModulesのgo.modを使えば解決するかもしれないので記載しておきます。

【環境】

windows10
VScode



ターミナルでgo envと打って設定を確認します


VScodeからターミナル→新しいターミナルで開いてgo envと打ち込みます。
ずらーっと色々設定が並んでくると思いますがその中の
GO111MODULE=
これがデフォルトだとonになっていないので設定をonにします。

GO111MODULE=をonにする

ターミナルで
go env -w GO111MODULE=on
と打ち込みましょう。
もう一度go envと打って確認すると
set GO111MODULE=onとなっているはずです。
※筆者はこの時、なぜかonにならず原因が分からなかったので
一度Go言語を再インストールしたところうまくいきました。

go.modを配置する

プロジェクトのルートディレクトリにcdで移動して、
go mod init example.com/m
と打ちます。
すると、ルートディレクトリにgo.modが作成されます。
go.modが作成されてから、go build と打ち込んで
ビルドするとimportに書かれているライブラリが自動でダウンロードされます。
ダウンロードされたライブラリがgo.modに書き込まれていきます。
こういう感じで↓

[go.mod]
module example.com

go 1.15

require github.com/labstack/echo/v4 v4.1.17

go.modはプロジェクト毎に作成して使います。
go.sumというファイルも自動生成されますが気にしなくて大丈夫です!

moduleの部分についての説明はこちら