GOPATH 环境变量用于指定这样一些目录:除 $GOROOT 以外的包含 Go 项目源代码和二进制文件的目录。go install 和 go 工具会用到 GOPATH:做为编译后二进制的存放目的地 和 import 包时的搜索路径。php
GOPATH 是一个路径列表,也就是能够同时指定多个目录。多个目录在 Mac 和 Linux 下经过“:”分割,Windows下经过“;”分割。注意,大部分状况下会是第一个路径优先,好比:查找包html
对于有些状况,好比,在 GOPATH 所在的路径以外执行 go install 会怎么样,能够本身试验一下。mysql
我的建议 GOPATH 中别设置多个路径,甚至不显示指定 GOPATH。可参照《Go 项目的目录结构 及 安装技巧》linux
有些地方建议在设置了 GOPATH 以后,将 $GOPATH/bin 加入 PATH 中,这样能够方便的运行 go install 好的二进制程序。然而,当存在 GOPATH 中存在多个路径时,这种写法只会将最后一个路径跟上bin。在mac或linux下能够经过这种方式解决:nginx
${GOPATH//://bin:}/binsql
环境文件:~/.bash_profile 的内容以下:api
alias ll='ls -alF' alias la='ls -A' alias l='ls -CF' export GOROOT=/usr/local/go export GOPATH=/Users/jianbao/GoglandProjects/beego-api-admin:/Users/jianbao/GoglandProjects/go-study export PHP=/usr/local/php/php-7.1 export PATH=$GOROOT/bin:${GOPATH//://bin:}/bin:$PHP/bin:$PHP/sbin:/usr/local/nginx/sbin:/usr/local/mysql:/usr/local/Cellar/subversion/1.9.4/bin:$PATH # # 注意:亮点是 ${GOPATH//://bin:}/bin, 可一次性添加 全部的 GOPATH 的 bin 目录 #