概要
go.mod で Go のバージョンを上げたくなったときの方法がわからなかったのでメモ。
なお、 Go 自体のバージョンを上げる方法もついでに書いておく。
起きた現象
VS Code で Go の開発をしていて、ジェネリックを使おうと思ったら以下のエラーが出た。
Goのバージョン1.18以上で動作するとのこと。
type parameters require go1.18 or later
それでは Go のバージョンを上げようかと思ったら、 Go 自体は1.18になっていた。
> go version
go version go1.18.3 darwin/amd64
答えは、単に go.mod でバージョンが低く設定されていただけであった。
go.mod
module sample
go 1.17
...
go.mod の更新方法
Go のバージョンは既に上がっているが、 go.mod のバージョンが低い場合はどのように更新するか。
go.mod は基本は手で触らないので、以下のコマンドで変更できる。
1.18にしたい場合↓
> go mod tidy -go=1.18
go.mod を開いてみると
go.mod
module sample
go 1.18
...
ちゃんと更新されていた。
一応、Go 自体のバージョンアップ
ついでなので Go 自体のバージョンアップ方法も書いておく。
OSX で Homebrew を使ってインストールしている場合は以下でOK。
> brew update
> brew upgrade go
その他は自分で調べてください。