GOROOT
go的安装目录(/usr/local/go)
GOPATH
-
GOPATH的值是包含一个目录(或多个目录)的路径,每个目录都代表Go的一个工作区(workspace)。一般情况下,为了分离自己与第三方的代码,我们会设置两个或更多的工作区。当有多个GOPATH时,默认会将go get的内容放在第一个目录下。
-
工作区用于放置Go语言的源码文件,以及安装(install)后的归档文件(archive file,也就是以".a"为扩展名的文件)和可执行文件(executable file)。
-
Go语言项目在其生命周期内的所有操作(编码,依赖管理,构建,测试,安装等)基本上都是围绕GOPATH和工作区进行的。
-
Go 语言提供的很多工具都是在 GOPATH 和工作区的基础上运行的,例如go build,go install,go get。
-
GOPATH约定有三个子目录
- src 存放源代码
- pkg 存放编译后生成的文件
- bin 编译后生成的可执行文件
GOBIN
一般不设置。为空时将可执行文件放置在执行go build的当前目录下。