Build go条件编译问题
我有两个文件,production_constants.go和local_constants.go在同一个包中 在每一页的顶部,我有:Build go条件编译问题,build,compiler-construction,go,Build,Compiler Construction,Go,我有两个文件,production_constants.go和local_constants.go在同一个包中 在每一页的顶部,我有: // +build production package receivers 及 当我使用任何一个标记进行编译时(“go install-tags local”,例如),对任何一个标记都使用相同的常量(即编译标记不受尊重)。如果我删除构建头,奇怪的是,所有内容都会编译,并且使用相同的常量。只有当我删除包声明(“包接收者”)上方的所有空间时,我才会收到“u在此
// +build production
package receivers
及
当我使用任何一个标记进行编译时(“go install-tags local”,例如),对任何一个标记都使用相同的常量(即编译标记不受尊重)。如果我删除构建头,奇怪的是,所有内容都会编译,并且使用相同的常量。只有当我删除包声明(“包接收者”)上方的所有空间时,我才会收到“u在此块中重新声明”
我感到困惑,因为我认为我已经完成了文档中为有条件构建的包所指示的工作。我是否遗漏了一些明显的内容?您可以通过以下方式检查这是否是编译问题(如前所述): 通过强制对每个文件进行完全重新编译,标记应该可以工作
// +build local
package receivers
go clean -i receivers
# or
go install -a -tags local