Go SDK 提供了丰富且实用的命令行工具,涵盖编译、代码格式化、源码获取、测试和性能分析等方方面面
go build 命令的作用是编译 Go 源码,并生成可执行的文件。
相关信息
在编译过程中,除了我们自己写的代码外,如果使用了第三方的包,这些包会被一同编译。当我们执行 go build 命令后,会搜索当前目录下的 go 源码并完成编译。
go build 命令还允许附加参数
go install 命令的作用和 go build 类似,都是将源码编译为可执行的文件,附加参数也基本通用
区别在于:
go get 命令的作用是获取源码包,这一操作包含两个步骤
bash// 下载 go 包 // go get <包仓库地址> go get github.com/ethereum/go-ethereum // 若要指定所获取源码包的版本,可以通过添加 “@版本号” 的方式执行 go get github.com/ethereum/go-ethereum@v1.10.1
go get 命令还允许附加参数
go clean 命令可以清理当前目录内的所有编译生成的文件
包括:
_testmain.go、test.out、build.out、a.out 以及后缀为 .5、.6、.8、.a、.o和 .so
的文件,这些文件通常是执行go build命令后生成的;go clean 命令还允许附加参数
提示
在团队式开发中,通常在每次提交代码前执行 go clean 命令,防止提交编译时生成的文件。
go run 命令的作用是直接运行 go 源码,不在当前目录下生成任何可执行的文件。
从原理上讲,go run 只是将编译后生成的可执行文件放到临时目录中执行,工作目录仍然为当前目录。同时,go run 命令允许添加参数,这些参数将作为 go 程序的可接受参数使用。
由此可见,go run 命令同样会执行编译操作。但要注意的是,go run 不适用于包的执行。
go fmt 命令的作用是将代码按照Go语言官方提供的代码风格进行格式化操作
bashgo fmt
go vet 可以报告我们的包中可能存在的错误
bashgo vet
go env将简单地打印所有 go 环境信息
bashgo env
go fix 可以找到使用旧 API 的 Go 程序,并使用新的 API重写它们
go generate 通常用于代码生成。
它将扫描与当前包相关的源代码文件,找出所有包含 //go:generate
的特殊注释,提取并执行该特殊注释后面的命令。
go doc 可以显示一个包或标识符的文档
bashgo doc -src fmt Printf
go help 可以查看所有 go 命令行可用的命令
本文作者:Silon汐冷
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!