go env
命令用于打印查看Go开发包的环境配置信息
$ go env
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=F:\go\path
set GOROOT=F:\go\root
...
Go通用环境信息
环境变量 | 变量值 | 描述 |
---|---|---|
GOARCH | amd64 | 目标处理器架构,程序构建环境的目标计算架构。 |
GOOS | windows | 目标操作系统,程序构建环境的目标操作系统。 |
GOPATH | F:\go\path | 当前工作区,工作区目录的绝对路径。 |
GOROOT | F:\go\root | Go开发包的安装路径的绝对路径 |
GOTOOLDIR | F:\Go\root\pkg\tool\windows_amd64 | Go工具目录的绝对路径 |
GOBIN | 编译器和链接器的安装目录,存放可执行文件的目录的绝对路径。 |
GOROOT
-
GOROOT
是Go语言的安装目录的绝对路径 -
GOROOT
只有在非默默人情况下才需要显示的设置
默认安装路径
- Windows下默认会将Go安装到
c:\Go
目录下 - Linux下默认会将Go安装到
usr/local/go
目录下
GOPATH
-
GOPATH
环境变量表示项目的工作目录 -
GOPATH
使用绝对路径提供项目的工作目录 -
GOPATH
的值不能与GOROOT
的值相同 -
GOPATH
适合处理大量Go语言源码以及多个包组合而成的复杂工作
工作区与工作目录的概念类似,若不实用工作目录的概念,多人开发时没有都有一套自己的目录结构,读取配置文件的位置不统一,将会导致开发标准不统一,会影响开发效率。工作目录是工程开发的相对参考目录,工作目录的概念相当于个人工作区。
使用GOPATH
的工程结构
在GOPATH
指定的工作目录下代码会保存在$GOPATH/src
目录中,工程经过go build
、go install
、go get
等指令后会生成二进制可执行文件并存放在%GOPATH/bin
目录下,生成的中间缓存文件会保存在GOPATH/pkg
目录下。
使用源码版本控制时,需要将整个源码添加到版本管理工具时,只需要将GOPATH/src
目录的源码添加,bin
和pkg
目录下的内容可由src
目录生成。
GOBIN
-
GOBIN
用于存储可执行文件的目录的绝对路径 -
go tool install
命令安装源码文件时生成的可执行文件会存放在此目录下