golang 构建标签(go:build)条件编译

 

//go:build 是 Go 语言(golang)中的一种构建标签(build tag),用于控制源代码文件在特定条件下是否被编译。

这个注释标记允许你在同一个包内编写针对不同平台、操作系统或编译条件的代码。当 go build 或 go test 等命令执行时,它们会检查这些标签来决定哪些文件应该包含在构建过程中。

 

//go:build linux,amd64

package main

import "fmt"

func main() {
    fmt.Println("This code only runs on Linux AMD64.")
}

 

这段代码只会当目标平台是 Linux amd64 的时候被编译和执行。如果目标是其他平台,这个文件将被忽略。

请注意,//go:build 替代了早期版本 Go 中的 // +build,在 Go 1.17 及以后的版本中推荐使用 //go:build。

Go1.19 新增了支持 `go:build unix`。

 

Link:https://www.cnblogs.com/farwish/p/18280643

posted on 2024-07-02 22:10  ercom  阅读(9)  评论(0编辑  收藏  举报