Go Genarate


原文链接: Go Genarate

Generate 命令和其他go build、go get、go test等没半毛钱关系。需特定执行,命令如下:

go generate [-run regexp] [-n] [-v] [-x] [build flags] [file.go... | packages]

参数说明:

-run 正则表达式匹配命令行,仅执行匹配的命令
-v 打印已被检索处理的文件。
-n 打印出将被执行的命令,此时将不真实执行命令
-x 打印已执行的命令

执行举例:

打印当前目录下所有文件,将被执行的命令

go generate -n ./...

对包下所有Go文件进行处理

go generate github.com/ysqi/repo

打印包下所有文件,将被执行的命令

go generate -n runtime

如何使用Generate命令

需在的代码中配置generate标记,则在执行go generate时可被检测到。go generate执行时,实际在扫描如下内容:

//go:generate command argument...
//go:generate go-bindata -o=asset/gen.go -pkg=asset asset/...

`