GOPATH, GOROOT, GOBIN
GOPATH
如果您来自其他编程语言,您可能以前是可以把源代码放在文件系统中的任意位置。
而Go tools会预期您的源代码结构是遵循一定的布局。
GOPATH
是您工作空间的根目录,它包含如下几个文件夹:
src
— 放源代码的位置:.go
,.c
,.g
,.s
pkg
— 放已编译的包的位置:.a
文件bin
— 放Go构建的可执行文件
跟PATH
环境变量类似,GOPATH
也的值也是一系列的用冒号:
分割的目录路径(Windows上是用分号;
分割的)。
Go会在GOPATH
目录去查找需要的包(packages)或库(libraries)。
go get
工具下载包会被放到GOPATH
中的第一个目录中。
自从Go v1.8起,如果您没主动设置GOPATH
环境变量,它的默认值在Linux/Unix上为$HOME/go
,在Windows上为%USERPROFILE%/go
。
有些工具会假定GOPATH
只是单个目录。
GOBIN
它是go install
和go get
会放构建main
包之后生成的二进制文件的地方。一般的,会把GOBIN
添加到环境变量PATH
中,这样方直接执行。
GOROOT
这是您安装Go编译器的地方。它也是查找标准库的地方。
由于Go将构建路径嵌入在工具链中,因此很少需要设置此变量。如果安装目录跟构建目录不同(或构建时指定的目录),则需要设置GOROOT
。
执行go env
命令查看Go环境变量的完整列表。
最后更新于