如何配置go环境 | 青训营

166 阅读2分钟

1、golang编译器下载

网址:golang.google.cn/dl

图片1.png

可自行选择版本,建议1.17以上版本。 下载后,直接安装即可(路径可自己选择)。

图片2.png

2、环境变量配置

2.1此电脑->属性->高级环境设置->环境变量->系统变量path->编辑->新建

找到go.exe的路径。

图片3.png

2.2新建文件夹Go用于存放工程代码

新建文件夹Go用于存放工程代码(可创建在任意磁盘),并在该文件夹下创建 bin、pkg、src 这三个文件夹,其中 bin 文件夹用于存放在编译项目时,生成的可执行文件,pkg文件夹用于存放在编译项目时,生成的包文件,src 文件夹用于存放编写的代码。

图片4.png

2.3系统变量的修改

变量名变量值
GO111MODULEon
GOBIND:\work\Go\bin
GOPATHD:\work\Go
GOPROXYgoproxy.cn
GOROOTD:\soft\Go

在系统变量中新建这5个变量,到此环境变量配置完成。其中 GOPATH 和 GOBIN 都是新建的用于存放代码的 Go 目录, GOROOT 是 GO 编译器安装的目录。

2.4确定

3、输出第一个go程序

3.1

在D:\work\Go\src目录下新建文件夹命名为first_test,用于存放第一个go程序。

3.2

打开vscode,进入新建的 first_test 文件夹中,新建一个 go 文件,命名为 hello.go ,之后在这个 go 文件中输入以下代码,然后按 Ctrl + s 保存代码,并运行。

图片5.png

3.3如果报错:

图片6.png

则在终端输入:

$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine")

即可成功运行。

4、其它问题

4.1

第二次打开文件时,package main会出现红线并提示,虽然这样不影响运行,但是每次写代码时都会有红线,看着就很难受,那么该怎么消除这个红线呢?

图片7.png

图片8.png

4.2

  • 通过翻译,我们发现,go module模式是分为两种的,分别是单模块和多模块,单模块是指该文件及其子目录下只能有一个go.mod文件,如果新建包或者移动到该目录下,会构成子代嵌套,依旧视为是一个module。
  • 多模块是默认关闭的,所以要手动打开,一般官方推荐的方法是采用工作区的方式,也就是为每个模块创建一个工作区文件夹,这样每个模块都会有自己的作用域,并且不会跨模块工作。那么怎么为多模块配置工作区呢?

4.3解决办法

设置->拓展->Go->Edit in settings.json->添加代码->重启
图片9.png
图片10.png
之后在代码中增加如下代码:
"gopls": {      "experimentalWorkspaceModule": true, },
保存设置并重启vscode,重新导入工作文件夹,就发现package下面的小红线消失了。

4.4其它

  • 注意,import后面跟的是()而不是{},我就是在这里出错,导致找了很久的bug。
  • 这里的编译还是比较严格的,比如一个变量你只赋值,但是没用,那么运行就会失败,并提示你有变量没用。