GOPATH

Go1.11 版本之后,开启 go mod 模式之后,就不再强制需要配置 GOPATH 了 !!!


GOPATH 是一个环境变量,用来表明你写的 Go 项目的存放路径( 工作目录 )。

GOPATH 路径,最好只设置一个。所有的项目代码,都放在 GOPATH 的 src 目录下

在 GOPATH 目录下,设置三个文件夹:
  bin,用来存放编译后生成的可执行文件
  pkg,用来存放编译后生成的归档文件
  src:用来存放源代码文件

配置环境变量

  • 查看当前 shell 是 zsh,还是 bash
dscl . -read /Users/$USER UserShell

// 如果是 bash ,选择编辑 ~/.bash_profile 文件,如果是 zsh,选择编辑 ~/.zshrc 文件
  • 根据上面的命令输出结果,选择要编辑的配置文件:
// 进入配置文件 
   vim ~/.bash_profile 或者 vim ~/.zshrc

//设置 GOROOT, GOPATH, PATH 三个环境变量
  export GOROOT=/usr/local/go
  export GOPATH=$HOME/go
  export PATH=$GOROOT/bin:$GOPATH/bin:$PATH

// 保存,配置生效
   source ~/.bash_profile
   或者 source ~/.zshrc

// 验证一下:在命令行中,查看 Go 的版本
   go version  // go version go1.19 darwin/arm64
   go env  // 查看 Go 环境变量

Go 的项目目录

在进行 Go 语言开发的时候,我们的代码总是会保存在 $GOPATH/src 目录下。

在工程经过 go build、go install 或 go get 等指令后,会将:

  • 下载的第三方包源代码文件,放在 $GOPATH/src 目录下
  • 产生的二进制可执行文件,放在 $GOPATH/bin 目录下
  • 生成的中间缓存文件,会被保存在 $GOPATH/pkg 下


如果我们使用版本管理工具( 如,git )来管理我们的项目代码,只需要添加 $GOPATH/src 目录下的源代码即可;

bin 和 pkg 目录下的内容,无需版本控制。