Win10系统下设置Golang环境变量

前言

本人安装Window系统下的Go语言的相关信息如下:

Go语言版本:go1.14.6

安装包:go1.14.6.windows-amd64.msi

安装路径:D:\Program Files\Go

Win10系统下配置Go语言环境变量
打开Win10下的环境变量设置界面
右键我的电脑->属性->高级系统设置->环境变量。

它有用户变量和系统变量。两者的区别是用户变量下配置只对当前用户有效,系统变量下配置对所有用户有效。本人建议在用户变量下配置。

配置 GOROOT

选择<新建>按钮。

变量名:GOROOT

变量值:D:\Program Files\Go

配置 path

找到path(如果不存在,则新建),点击编辑—>新建,输入:%GOROOT%\bin

保存成功后,按下 Windows+X−>命令提示符,打开DOS命令行,输入:go env

如果能够成功打印出Go语言的相关环境变量,即表示配置成功。例如,打印出Go的版本信息:

输入: go version
go version go1.14.6 windows/amd64

配置 GOPATH

GOPATH 环境变量是Go项目的工作目录。如果你的项目路径是在:D:\go_work\go目录下进行的,go目录下一般有以下三个子目录,分别是:src、pkg 和 bin。

变量名:GOPATH

变量值:D:\go_work\go

配置 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 及以后的版本则不再需要设置该环境变量。

上一篇:LeetCode:Climbing Stairs(编程之美2.9-斐波那契数列)


下一篇:GoPath模式和GoMoudle模式的相爱相杀