関連記事
GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ
概要
以下、自分用のメモです。たまに使いたいときによく忘れるのでここメモメモ。。。
たまにですが、コード上でGoのバージョンが取得して利用したいときがあります。
ランタイムバージョンは runtime.Version() から取得可能です。また、debug.BuildInfo.GoVersion でも取得出来ます。
サンプル
package runtimes import ( "fmt" "runtime" "runtime/debug" ) // RuntimeVersion は、runtime.Version() のサンプルです。 func RuntimeVersion() error { // runtime.Version() で 現在利用している Go のバージョンが取得できる ver := runtime.Version() fmt.Println(ver) // debug.ReadBuildInfo() からも取得することが出来る info, ok := debug.ReadBuildInfo() if !ok { return fmt.Errorf("failed: debug.ReadBuildInfo()") } fmt.Println(info.GoVersion) return nil }
実行
$ task task: [build] go build -o "/workspace/try-golang/try-golang" . task: [run] ./try-golang -onetime ENTER EXAMPLE NAME: runtime_version [Name] "runtime_version" go1.23.5 go1.23.5 [Elapsed] 44.09µs
参考情報
https://pkg.go.dev/runtime@go1.23.5#Version
https://pkg.go.dev/runtime/debug@go1.23.5#BuildInfo
個人的Goのおすすめ書籍
個人的に読んでとても勉強になった書籍さんたちです。
過去の記事については、以下のページからご参照下さい。
サンプルコードは、以下の場所で公開しています。