20.go vet 和 go tool vet

1.go vet 与 go tool vet
	命令go vet是一个用于检查Go语言源码中静态错误的简单工具。
	与大多数Go命令一样,go vet命令可以接受-n标记和-x标记。-n标记用于只打印流程中执行的命令而不真正执行它们。
	-n标记也用于打印流程中执行的命令,但不会取消这些命令的执行。

	go vet命令的参数既可以是代码包的导入路径,也可以是Go语言源码文件的绝对路径或相对路径。
	但是,这两种参数不能混用。也就是说,go vet命令的参数要么是一个或多个代码包导入路径,要么是一个或多个Go语言源码文件的路径。

	go vet命令是go tool vet命令的简单封装。它会首先载入和分析指定的代码包,并把指定代码包中的所有Go语言源码文件和以“.s”结尾的文件
	的相对路径作为参数传递给go tool vet命令。其中,以“.s”结尾的文件是汇编语言的源码文件。如果go vet命令的参数是Go语言源码文件的路径,
	则会直接将这些参数传递给go tool vet命令。

	如果我们直接使用go tool vet命令,则其参数可以传递任意目录的路径,或者任何Go语言源码文件和汇编语言源码文件的路径。路径可以是绝对的也可以是相对的。

	实际上,vet属于Go语言自带的特殊工具,也是比较底层的命令之一。Go语言自带的特殊工具的存放路径是$GOROOT/pkg/tool/$GOOS_$GOARCH/,
	我们暂且称之为Go工具目录。我们再来复习一下,环境变量GOROOT的值即Go语言的安装目录,环境变量GOOS的值代表程序构建环境的目标操作系统的标识,
	而环境变量$GOARCH的值则为程序构建环境的目标计算架构。另外,名为$GOOS_$GOARCH的目录被叫做平台相关目录。

	

https://github.com/hyper0x/go_command_tutorial/blob/71833ffcab991a2931d3106490d96008f45c3177/0.11.md

猜你喜欢

转载自blog.csdn.net/enlyhua/article/details/82764662