$ myapp -versionMyApp version 0.5.132) h' }% B, G5 M. B
0.5 是我设置的版本号,132 是每次编译二进制文件时自动增加的值。 ( R5 t5 m; m' l" R( S这在 Go 中有可能吗? ! g" i @; m( {5 ?; N 4 X" J: X5 ~8 x0 L解决方案: 4 H* R. y& y# i+ N- |
Go 链接器(go tool link)设置未初始化字符串变量的值有一个选项:) b# b; I0 t, k' C8 f+ V7 {7 S' g* {
golang-X importpath.name=value Set the value of the string variable in importpath named name to 9 [8 @7 f& O6 d价值。请注意,在 Go 1.在5 之前,该选项使用两个单独的参数。现在它需要在第一个 = 在符号上拆分一个参数。. Z q! ~3 B1 n2 V7 l9 Y
作为构建过程的一部分,您可以使用它设置字符串变量的版本。go使用-ldflags. 例如,给出以下源文件:9 v6 Y7 V. E9 D2 c( J, Z