go命令依赖一个重要的环境变量:$GOPATH
GOPATH允许多个目录,当有多个目录时,请注意分隔符,多个目录的时候Windows是分号;
当有多个GOPATH时默认将go get获取的包存放在第一个目录下
$GOPATH目录约定有三个子目录
src: 源代码(比如:.go), 按照golang默认约定,go run,go install等命令的当前工作路径, 即在此路径下执行上述命令
pkg: 编译时生成的中间文件(比如:.a)
bin: 编译后生成的可执行文件
go get 和go install
go get会做两件事:从远程下载需要用到的包,然后执行go install
go install:会生成可执行文件直接放到bin目录下,当然这是有前提的, 你编译的是可执行文件,如果是一个普通的包,会被编译生成到pkg目录下该文件是.a结尾
GOROOT 和 GOPATH
GOROOT Go的安装路径
GOPATH 默认安装包的路径, 类似workspace的概念
如果在GoLand配置中配置Project GOPATH, 配置到项目根目录下, 那么在项目根目录就会生成一个pkg的文件夹