用多个标签构建

rye*_*ead 10 tags build go

正如所看到这里,去构建一个接受"标签"标志,将包括被"标记",文件即

// +build foo

package main

....
Run Code Online (Sandbox Code Playgroud)

将被排除在外

go build
Run Code Online (Sandbox Code Playgroud)

但包括在内

go build -tags=foo
Run Code Online (Sandbox Code Playgroud)

有没有办法包含多个标签?即

go build -tags=foo && bar
Run Code Online (Sandbox Code Playgroud)

Tim*_*per 10

多个标签可以包含在空格分隔列表中:

go build -tags="foo bar"
Run Code Online (Sandbox Code Playgroud)


Ale*_*eld 6

您应该更喜欢在逗号分隔列表中包含多个标签:

go build -tags=a,b
Run Code Online (Sandbox Code Playgroud)

Go 1.13 发行说明

go build 标志 -tags 现在采用逗号分隔的构建标签列表,以允许在 GOFLAGS 中使用多个标签。空格分隔的形式已被弃用,但仍被认可并将保留。