Tengo un problema con la compilación condicional en Go 1.compilación condicional de Golang
Aquí está mi código de prueba. ¿Hay algo que malinterprete sobre la restricción "// + build" y la marca "-tags"?
main1.go
// +build main1
package main
import (
"fmt"
)
func main() {
fmt.Println("This is main 1")
}
main2.go
// +build main2
package main
import (
"fmt"
)
func main() {
fmt.Println("This is main 2")
}
cuando se ejecuta "ir a construir", yo todavía tengo error de compilación
$ go build -tags 'main1'
# test
./main2.go:8: main redeclared in this block
previous declaration at ./main1.go:8
Está documentado en http://golang.org/pkg/go/build/#hdr-Build_Constraints. Específicamente: "Para distinguir las restricciones de compilación de la documentación del paquete, una serie de restricciones de compilación debe ir seguida de una línea en blanco". – chowey