![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=1739288879-kHP6QfTvMmE2wBSA3BiGGM89FUWbSdhm-0-ba1f2242c4151e6c5331c1ba501ffbdd)
图1-21 Welcome to GoLand界面
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P23_10242.jpg?sign=1739288879-dhNGGB5jbTE5mTCSSETBM3j48w0JnESD-0-b1acd8b0a85fd726eaff9b4ee95398b9)
图1-22 配置GOROOT
下一步单击GOPATH,在该界面看到Global GOPATH和Project GOPATH配置,如图1-23所示。
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P23_10243.jpg?sign=1739288879-yUkT3osBhJae93bmmmCdm2dUmYImCGmR-0-7480b545d21c1e6fc403ec00463c9ecf)
图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=1739288879-i8onQ1oeSOuOtlL5sbCv0i0Prrdo7EXF-0-2948ef3628ccd28a19b216001d518811)
图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=1739288879-TWHQnsdmvOqcTahcP6bFiLGeoGN2eOuC-0-34d2f7050101306a4f9ee9fd7bf34c81)
图1-25 配置属性GO111MODULE
![](https://epubservercos.yuewen.com/1D6020/26581073209120206/epubprivate/OEBPS/Images/Figure-P24_10281.jpg?sign=1739288879-mMHVYjCcDltrPO2L3uDFSRZdjnMj9BdY-0-a511d6652ca392ef42a3e004dcbc474f)
图1-26 Go语言的环境信息