我是 Go 新手,作为一名前 C++ 程序员,我对如何在 Go 中执行此操作有点困惑。我想添加一个编译时标志,基于该标志我可以包含一些测试代码。
我尝试使用-ldflags,但无法超越单个变量。
这是我尝试过的:-ldflags "X main.var1 var1_value" "X main.var2 var2_value"。
我在这里做的事情正确吗?
考虑使用构建约束而不是-X标志。这允许您通过执行类似的操作来有条件地编译任何代码
go install -tags 'foo bar'
Run Code Online (Sandbox Code Playgroud)
-X如果您仍然想多次使用该标志,请按如下操作:
go install -ldflags '-X main.Foo 1 -X main.Bar 2' main.go
Run Code Online (Sandbox Code Playgroud)
或者(在 Go 1.5+ 中添加并推荐)
go install -ldflags '-X main.Foo=1 -X main.Bar=2' main.go
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
475 次 |
| 最近记录: |