工作区是放置Go源码文件的目录;一般情况下,Go源码文件都需要存放到工作区中;但是对于命令源码文件来说,这不是必须的。
每一个工作区的结构都类似下图所示:/home/hypermind/golib: src/ pkg/ bin/
src目录用于存放源码文件;以代码包为组织形式
pkg目录用于存放归档文件(名称以.a为后缀的文件) 所有归档文件都会被存放到该目录下的平台相关目录中,用样以代码包为组织形式
平台相关目录:两个隐含的Go语言环境变量:GOOS(操作系统)和GOARCH(计算机架构)。以$GOOS_$GOPATH为命名方式,如:linux_amd64
<工作区目录>/pkg/<平台相关目录>/<一级代码包>/<二级代码包>/<末级代码包>.a
bin目录:用于存放当前工作区中的Go程序的可执行文件
1.当环境变量GOBIN已有效设置时,该目录会变的无意义;当GOPATH的值中包含多个工作区的路径时,必须设置GOBIN,否则无法成功安装Go程序的可执行文件