![GO语言编程从入门到实践](https://wfqqreader-1252317822.image.myqcloud.com/cover/881/47216881/b_47216881.jpg)
1.7 搭建GoLand环境
GoLand激活成功后,再次打开GoLand,在Welcome to GoLand界面单击Configure,找到并单击Settings,从而进入Settings for New Projects界面,如图1-21所示。
在Settings for New Projects界面打开Go→GOROOT选项,然后选择已安装的Go语言编译器,如图1-22所示。
如果GoLand不是最新版本,配置GOROOT的时候会提示“The selected directory is not a valid home for Go SDK”异常,这是GoLand与Go语言版本不匹配导致,我们在Go语言安装目录下打开src\runtime\internal\sys\zversion.go,然后添加代码const TheVersion = `go1.18`,其中go1.18代表Go语言版本,保存文件后即可在GoLand配置GOROOT。
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P23_10241.jpg?sign=1739480343-aDZZqFsHDOkJ6EaIe54UUrgStBQyeciu-0-71e62b2fcb8173a0708619b3b444aafa)
图1-21 Welcome to GoLand界面
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P23_10242.jpg?sign=1739480343-7UhMfkuWGfbMx04LKwTtPTm1MdBKs0Nf-0-da7fc345c32dbd52c8fe4cfdb2f1681b)
图1-22 配置GOROOT
下一步单击GOPATH,在该界面看到Global GOPATH和Project GOPATH配置,如图1-23所示。
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P23_10243.jpg?sign=1739480343-qfLxb3cLv7eEifDrQqqKrgwuqUes4yBr-0-5e22ddf2044ee00de85b3a86c04522b3)
图1-23 配置GOPATH
Global GOPATH和Project GOPATH的配置说明如下:
1)Global GOPATH:代表全局GOPATH,一般来源于系统环境变量中的GOPATH,所有Go语言项目都能使用该路径,它与Go语言的环境变量GOPATH相同。
2)Project GOPATH:代表项目所使用的GOPATH,仅适用于当前项目。
安装Go语言开发环境已设置了环境变量GOPATH(即Global GOPATH),我们只需在Project GOPATH下配置即可。在E盘下创建go文件夹,然后在Project GOPATH下添加go文件夹的路径信息,如图1-24所示。
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P24_67802.jpg?sign=1739480343-R2VLEIU6qcpyWjqYjuAYl6BnF7EqhmX7-0-666c2977628985a78c2bc3aa86f0cdcd)
图1-24 配置Project GOPATH
最新版本Go语言的配置属性GO111MODULE为on,它用于开启或关闭模块支持,设有3个可选值:off、on、auto,每个可选值的说明如下:
1)GO111MODULE=off:无模块支持,Go语言会从GOPATH和vendor文件夹寻找包。
2)GO111MODULE=on:模块支持,Go语言忽略GOPATH和vendor文件夹,只根据go.mod下载依赖。
3)GO111MODULE=auto:分别从GOPATH、vendor文件夹或go.mod寻找包。
配置属性GO111MODULE用于解决早期Go语言对模块或包管理遗漏下来的问题,早期Go语言是通过GOPATH和vendor文件夹管理模块或包的,现更改为使用go.mod管理模块或包。
为了更好地兼容新旧版本问题,我们将GO111MODULE设为auto。打开CMD窗口,输入并执行指令go env -w GO111MODULE=auto即可,如图1-25所示。
由于国内网络问题,使用go get指令下载第三方包会出现网络无法接通的问题,为了解决此问题,在CMD窗口输入并执行指令go env -w GOPROXY=https://goproxy.cn,direct即可。
最后在CMD窗口输入“go env”即可查看当前Go语言的环境信息,如图1-26所示。
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P24_10280.jpg?sign=1739480343-VLN0rs1Eig6Sh2nqTlP1LTB9or0Zrt7f-0-7d935d29724698b632ec6383d9f9ba1c)
图1-25 配置属性GO111MODULE
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P24_10281.jpg?sign=1739480343-6MA389MLNSbnIlerhBbOozGXfHB0gxIj-0-265de12475fca319ccdce1ed5044eb77)
图1-26 Go语言的环境信息