Go env环境变量配置
set GO111MODULE=on
# 编译目标的指令集架构为 64位 x86架构
set GOARCH=amd64
# 存放go编译安装可执行二进制文件的地方
set GOBIN=A:Gobin
set GOCACHE=C:Users11540AppDataLocalgo-build
set GOENV=C:Users11540AppDataRoaminggoenv
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=A:goDatagopkgmod
set GONOPROXY=
set GONOSUMDB=
# 编译目标系统
set GOOS=windows
set GOPATH=A:goData
set GOPRIVATE=
set GOPROXY=https://goproxy.cn,direct
set GOROOT=A:Go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=A:Gopkgtoolwindows_amd64
set GOVCS=
set GOVERSION=go1.19
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set GOWORK=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=C:Users11540AppDataLocalTempgo-build1999809709=/tmp/go-build -gno-record-gcc-switches
可以用 go env
查看当前的go环境变量,如下图所示:
GO111MODULE
go module是go官方自带的go依赖管理库,在1.13版本正式推荐使用。默认值为空,即go判断开不开启module的依据是看当前项目的根目录下有没有go.mod文件,当然我们也可手动更改为 on(全部开启)/off(全部不开启,不建议):
go env -w GO111MODULE=on
GOPROXY
GOPROXY
就是设置Golang的全局代理。在下载依赖包的时候,一般是访问github的仓库,国内的环境很容易被墙,所以最好设置一个速度快的代理。Go
在此版本中GOPROXY
的默认值为https://proxy.golang.org
,国内是无法访问的。因此,这里推荐使用七牛云的代理https://goproxy.cn
go env -w GOPROXY=https://goproxy.cn,direct
GOPATH
在go 1.11版本之前,GOPATH
主要用于指定我们的开发工作区(Workspace),是存放源代码、测试文件、库静态文件、可执行文件的目录。但是自从go 1.11引入module功能之后,GOPATH
的作用就不大了。目前在go module
模式下,使用go get下载的外部依赖模块就位于$GOPATH/pkg/mod
目录下。而因为GOPATH
的默认值为C:Users%UserName%go
,所以下载的外部依赖包也就存放在C盘下面。如果怕之后安装的依赖包太多占用C盘空间的话,我们可以更改GOPATH
到其他位置,比如设置为go的安装目录下面:
go env -w GOPATH=D:Golang1.19gopath
GOMODCACHE
即存储go
下载的外部依赖模块文件的目录,默认值为$GOPATH/pkg/mod
,因此我们一般只需要更改GOPATH
的值即可,此环境变量的值就会自动做出相应的变动。当然你也可以设置为其他值。
GOCACHE
此目录存放go项目在构建过程中产生的缓存,默认值为C:Users%UserName%AppDataLocalgo-build
,我们也可以更改为其他值,比如设置到GOPATH
目录下:
go env -w GOCACHE=D:Golang1.19gopathgo-build-cache
GOENV
此目录存放go环境变量的值的配置文件,默认值为C:Users%UserName%AppDataRoaminggoenv
,此值一般不需要更改,并且也不能通过go env的方式来更改此变量值。我们可以来到此目录下,发现有一个env文件,打开就可以看到文件的内容就是我们之前自定义过的go环境变量的值:
GOROOT
即go语言的安装目录,此值切记不要修改,保持默认值即可。如果乱改了,然后发现无法在控制台中使用go命令了,可以打开上一条中提到的env配置文件,删除自己自定义的值,即可恢复GOROOT为默认值。
其他相关命令
// 打印指定go环境变量的值
go env $Variable_Name
// 将指定go环境变量的值重设为默认值
go env -u $Variable_Name
关于系统环境变量
在go语言的安装过程中,安装程序会自动将$Go_Installation_Directorybin加入到系统环境变量的Path里面,比如D:Golang1.19bin,这样就方便我们可以直接在CMD里面使用go的相关命令。除此之外,我们一般就不需要在系统环境变量里为go配置任何东西了,因为其他的一些go环境变量都可以通过go env来配置。
参考文档:
Go env环境变量配置
Go语言GOPATH详解(Go语言工作目录)
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net