前言
本人安装Window系统下的Go语言的相关信息如下:
Go语言版本:go1.14.6
安装包:go1.14.6.windows-amd64.msi
安装路径:D:Program FilesGo
Win10系统下配置Go语言环境变量
-
打开Win10下的环境变量设置界面
右键我的电脑->属性->高级系统设置->环境变量。
它有用户变量和系统变量。两者的区别是用户变量下配置只对当前用户有效,系统变量下配置对所有用户有效。本人建议在用户变量下配置。
- 配置 GOROOT
选择<新建>按钮。
变量名:GOROOT
变量值:D:Program FilesGo
- 配置 path
找到path(如果不存在,则新建),点击编辑—>新建,输入:%GOROOT%in
保存成功后,按下 Windows+X−>命令提示符,打开DOS命令行,输入:go env
如果能够成功打印出Go语言的相关环境变量,即表示配置成功。例如,打印出Go的版本信息:
输入: go version
go version go1.14.6 windows/amd64
- 配置 GOPATH
GOPATH 环境变量是Go项目的工作目录。如果你的项目路径是在:D:go_workgo目录下进行的,go目录下一般有以下三个子目录,分别是:src、pkg 和 bin。
变量名:GOPATH
变量值:D:go_workgo
- 配置 GOPROXY
Go默认的GOPROXY的值是:GOPROXY=https://proxy.golang.org,direct。这个goproxy在使用go get安装第三方库的时候会报错,导致无法下载成功(原因你懂的)。所以必须要修改一下。
变量名:GOPROXY
变量值:https://goproxy.cn,direct 或者修改为:
GOPROXY的值还可以修改为:https://goproxy.io,direct 或 https://mirrors.aliyun.com/goproxy
- 配置 GO111MODULE
GO111MODULE环境变量主要是用来开启或关闭模块支持的。
它有三个可选值:off
、on
、auto
,默认值是 auto
。
GO111MODULE=off
无模块支持,go 会从 GOPATH 和 vendor 文件夹寻找包。GO111MODULE=on
模块支持,go 会忽略 GOPATH 和 vendor 文件夹,只根据go.mod
下载依赖。GO111MODULE=auto
在$GOPATH/src
外面且根目录有go.mod
文件时,开启模块支持。
在使用模块的时候,GOPATH
是无意义的,不过它还是会把下载的依赖储存在 $GOPATH/src/mod
中,也会把 go install
的结果放在 $GOPATH/bin
中。
可以在DOS命令行下直接使用 go env -w 进行设置。
这个环境变量是在Go-1.11版本引入的,在go1.11版本前,想要对go语言包进行管理,只能依赖第三方库实现,比如Vendor,
GoVendor,
GoDep,
Dep,
Glide
等等。由于我安装的Go语言是1.14版本的,所以选择开启模块支持,设置如下:
go env -w GO111MODULE=on
<说明> 也可以使用上面的方法设置环境变量的值,但是个人觉得这种命令行设置的方式更方便一些。可以用 go env -u 恢复其默认设置。例如,恢复GO111MODULE的默认值,可以使用:
go env -u GO111MODULE
<备注> 从 Go 1.11 开始 Go 语言开始支持 Go modules 来解决大家长久以来诟病的Go语言依赖包管理问题。go module 是Go语言从 1.11 版本之后官方推出的版本管理工具,并且从 Go1.13 版本开始,go module 成为了Go语言默认的依赖管理工具。
在Go语言 1.12 版本之前,要启用 go module 工具首先要设置环境变量 GO111MODULE,不过在Go语言 1.13 及以后的版本则不再需要设置该环境变量。