我在Go 1中使用条件编译遇到了麻烦。这是我的测试代码。关于“ // + build”约束和“ -tags”标志,我有什么误解吗?main1.go// +build main1package mainimport ( "fmt")func main() { fmt.Println("This is main 1")}main2.go// +build main2package mainimport ( "fmt")func main() { fmt.Println("This is main 2")}当运行“进行构建”时,我仍然出现编译错误$ go build -tags 'main1'# test./main2.go:8: main redeclared in this block previous declaration at ./main1.go:8
3 回答
慕虎7371278
TA贡献1802条经验 获得超4个赞
正确,您必须在其后// +build XXX
而不是恰好之前留一个空行,package main
因为声明该包的行之前的所有注释行均被视为该包的描述,并由解析godoc
。
- 3 回答
- 0 关注
- 257 浏览
添加回答
举报
0/150
提交
取消