我正在尝试使用 go build 来更新我项目中的一个变量:
完整项目路径:
c:\goprojects\src\deployment\cl\apps\appName
从 c:\goprojects\src 运行
go install -ldflags="-X main.GitRev=adaf66c" deployment\cl\apps\appName\...
在go项目中我有:
package main
var GitRev = "oldvalue"
func main() {
fmt.Println("variable contents: ", GitRev)
}
然后从我运行的命令行:
..\bin\appName.exe
我期待看到的值(value):
adaf66c
我得到的:变量内容:
oldvalue
最佳答案
我相信你只是在声明一个变量而不是一个标志。导入标志包并像这样分配它。
import "flag"
var GitRev = flag.String("GitRev", "oldvalue", "what it represents")
关于go ldflags 设置变量值不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53402640/