安装VScode请参考我的上一篇博客:VScode安装_㫪548的博客-CSDN博客
接下来我们直接进入正题:
Go语言(又称Golang)是一种开源的编程语言,由Google开发并于2009年首次发布。Go语言具有简洁、高效、可靠和易于阅读的特点,被设计用于解决大型项目的开发需求。它结合了静态类型语言的安全性和动态类型语言的灵活性,同时提供了垃圾回收机制和并发编程的原生支持。Go语言的目标是提供一种简单且高效的编程方式,以便开发人员能够更快地构建可靠的软件。它在网络编程、分布式系统、云计算等领域得到广泛应用。
简单来说就是一种类似C/C++的新型语言,但是比C/C++简单的多的一种语言,并且多出很多方便简单的功能,很多公司都在使用这种语言,简单且高效。
如果你在安装完VScode和安装部分插件后就开始编写代码,你会很悲催的发现:报错了!!!一个程序员必经的成长过程就是处理各种报错,痛并快乐着。言归正传,这是由于Go语言官方有一些工具,VSCode在检测到你是进行Go语言开发的时候会提示你安装这些工具,以便提升你的开发效率(偷懒神器),但是一般不出意外的话,这个下载肯定是会出意外的,原因是因为国外的代理是下载不了的,我们只能选择更换为国内的代理。
接下来我们正式进入GO开发环境配置
下载GO安装包:The Go Programming Language
点击Download
直接点击下载你需要的版本即可 ,我这里为了示例下载了go1.19的,实际上我用的是go1.20版本的。
点击Next
这里仍然是可以更改存储的路径,也可以不动保持默认路径。
点击Install,下一步点击Finish即可。我们可以在你存储的地址点开看到:
接下来你需要先在你的WIndows上配置GO环境变量,好,那啥是个环境变量呢?
官方回答如下:
环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,具体起什么作用这和具体的环境变量相关。常用的是PATH环境变量,其作用是告诉系统,当要求系统运行一个程序而没有告诉系统若在当前目录下面没有寻找到此程序,还应到哪些目录下去寻找。
简单来说,环境变量就是用来存储系统和用户信息的变量,环境变量的值就是其存储的路径。
那为啥要配置GO环境变量呢?
是个好问题,我的理解是,如果不配置Go环境变量,打开cmd,执行go命令会报错,显示go不是内部或外部命令,无法运行程序。
Windows的环境变量在设置-系统-系统信息-高级系统设置-环境变量(我更习惯在搜索框中直接搜索高级系统设置,自动就弹出来了),如图所示:
用户变量和系统变量的区别
用户环境变量:局部生效,只对当前用户生效。
系统环境变量:全局生效,对所有用户都生效。
用户变量和系统变量冲突时,以用户变量为主。
总结:一般情况下你的电脑,只有你自已一个人使用,所以我们直接把go相关的环境变量直接配置到系统变量中。把go相关的用户变量都删除。这样配置起来轻松些。
我们用户变量中的GOPATH删除,并删除用户变量PATH中一个小变量,如图所示,删除后切记一定点击确认,否则系统将默认你未保存修改。
在系统变量里增加go相关的变量,需要增加以下变量:
注意!在设置变量值时,你安装的GO时哪个版本就改为哪个版本,别跟着我的乱填。
Go语言是一个编译型语言,有很多依赖包需要开发在打包过程编译进去。所以需要配置一个类似workspace的工作区,也就是我定义好目录,要在这个目录下写源代码。
GOPATH境变量:用来表明你写的go项目的存放路径(工作目录)。
GOPATH路径最好只设置一个,所有的项目代码都放在GOPATH的src目录下。
在电脑C盘创建一个C:\goproject目录,用来存放源代码,作为GOPATH路径。在c:\goproject下新建三个目录src、bin、pkg效果如下:
更改系统变量如下:
输入:GOPATH ,变量值:D:\goproject,注意!我这里把VScode下载到D盘中了,如果你下载到了C盘,把D改成C就行。 输入:GOROOT ,变量值:D:\WYJ\go,变量值实际上就是变量的地址,大家可以根据自己的地址改就可以,建议直接浏览文件找。
这一步是给系统的环境变量PATH中增加变量:
C:\WYj\go\bin
C:\goproject\bin
如果打开发现如果系统自动增加了这两项,就不手动增加了。
这一步是配置GOPROXY代理加快包的下载,很关键!!!
顺便介绍一下GO111MODULE:
GO111MODULE 有三个值:off, on和auto(默认值)。
GO111MODULE=off,go命令行将不会支持module功能,寻找依赖包的方式将会沿用旧版本那种通过vendor目录或者GOPATH模式来查找。
GO111MODULE中的111是什么?可以是222吗?
GO111MODULE中的111,代指1.11版本。(为了纪念第一个版本)
GO111MODULE=on,go命令行会使用modules,而一点也不会去GOPATH目录下查找。
GO111MODULE=auto,默认值,go命令行将会根据当前目录来决定是否启用module功能。这种情况下可以分为两种情形:
当前目录在GOPATH/src之外且该目录包含go.mod文件
当前文件在包含go.mod文件的目录下面。
go:
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io
注: https://goproxy.io 也可替换成阿里云的 https://mirrors.aliyun.com/goproxy或https://goproxy.cn,direct
linux:
$ export GO111MODULE=on
$ export GOPROXY=https://goproxy.cn
or
$ echo "export GO111MODULE=on" >> ~/.profile
$ echo "export GOPROXY=https://goproxy.cn" >> ~/.profile
看不懂没关系,你只需要注意标红的地方即可,即GOPROXY环境变量的值可以更改为如下三个,其实大部分用户都没有这么麻烦,只需要用https://goproxy.cn,direct即可,但是我用的https://mirrors.aliyun.com/goproxy这个才不报错,可能是由于我安装了WSL+Ubuntu(这个后期也会出教程),我下载GO语言包是Linux版的,所有所需的环境变量值有所不一样。
解释完毕,我们开始在系统环境中新增GOPROXY环境变量和GO111MODULE环境变量:
点击新建,选择“变量名”输入框并输入“GO111MODULE ” ;“变量值”输入框并输入“on”。
点击“新建…”按钮, 选择“变量名”输入框并输入“GOPROXY”, 选择“变量值”输入框并输入“ https://goproxy.cn,direct ”(大家输入这个即可)。注:https://goproxy.cn,direct中的direct参数的作用是:当https://goproxy.cn代理可以正常访问时,就优先走代理下载依赖包。如果代理走不通或没有这个包,就不使用代理,直接去找包的github源地址下载。
接下来,打开cmd命令行,输入:go env
可以找到我们刚刚设置的环境变量,如果设置完成并且点击过确认了,却没有找到,可以充钱电脑试一下。到此,go开发环境设置可以告一段落了。
网上很多教程是让你打开终端输入以下代码:
go env -w GO111MODULE=on
go env -w GOPROXY=https://proxy.golang.com.cn,direct
我上面所写的是手动更改过程,大家在命令行输入这两行代码时可能会出现报错:
这个报错的意思是,由于你之前设置了系统环境变量,所以在命令行输入更改系统环境变量的指令没有办法覆盖原来的环境变量。所以特别不建议大家手动改完又在命令行进行更改,两者只需要进行其一即可。
接下来我们打开VScode,Windows平台按下Ctrl+Shift+P,Mac平台按Command+Shift+P,如图:
我们在这个输入框中输入>go:install,下面会自动搜索相关命令,我们选择Go:Install/Update Tools这个命令,按下图选中并会回车执行该命令(或者使用鼠标点击该命令)
全选安装即可,安装完成后VScode中会出现以下代码显示安装成功。
至此,完成以上内容,打开你的VSCode,就会发现在保存Go代码的时候不会再有那么多报错了!(剩下报错侧边出现什么未安装的包一律install即可)这时你的VScode来写GO语言应当可以顺利完成了。大家可以用以下代码测试:
package main
import (
"fmt"
)
func main() {
fmt.Println("hello,world")
}
点击运行,如果出现以下结果,恭喜!那说明你已经成功配置好了GO语言环境!
写在最后,如果出现报错显示你有什么包未安装请自行寻找,网上遍地都是解决办法,祝君好运!
参考文章:【Golang】VsCode下开发Go语言的环境配置(超详细图文详解)_vscode go环境_桌子椅子凳子。的博客-CSDN博客
golang环境详细安装、配置_golang安装_qq_44830881的博客-CSDN博客
附上一个GO的学习网站:Golang导航 - 学Go从这里开始!