diff --git a/source/c01/c01_01.md b/source/c01/c01_01.md index c96c67e90ab0079c219cedd5171898504f770205..585b6bd1eb1326c2ebf76b718ad0cf010934e574 100644 --- a/source/c01/c01_01.md +++ b/source/c01/c01_01.md @@ -76,57 +76,185 @@ Goland 没有像 PyCharm 那样搞一个免费社区版,它是需要付费的 ## 3. 配置 VS Code 环境 -提前设置用户级的环境变量 +### 下载 VS Code + +要使用 VS Code,咱首先第一步得安装它。 + +官网下载地址是:https://code.visualstudio.com/Download + +但是在这里获取的下载链接非常的快,没有使用代理的同学,几十M的软件可能得下载一天。 + +那么有什么办法呢? + +这里教大家一个方法: + +在官网获取的下载链接是这样子: ``` -GOPATH = F:\Go-Player -PATH = %GOPATH%\bin # 以追加的方式 +https://az764295.vo.msecnd.net/stable/c185983a683d14c396952dd432459097bc7f757f/VSCodeUserSetup-x64-1.55.0.exe ``` -昨天评论区有人问,GOPATH 和 GOROOT 是什么?为什么需要设置?回想一下 你学 Python 的话,安装 Python 解释器的时候,是不是也要设置环境变量?这里也是类似。 +我们看到前面的域名是`az764295.vo.msecnd.net` ,你只要将这个域名 `vscode.cdn.azure.cn` 就可以。 -GOROOT :在GO语言中表示的是 Go语言编译、工具、标准库等的安装路径,通过它可以告诉系统你的 go.exe 是放在哪里,不设置的话,你后面执行 `go get` 、`go install` 的时候,系统就不认识它了。 +更换后的下载链接是这样子: -而 GOPATH环境变量则表示 Go的工作目录,这个目录指定了需要从哪个地方寻找GO的包、可执行程序等,这个目录可以是多个目录表示。这里我设置成我的工作空间(目录你可以自己定) :`F:\Go-Player`,如果不设置的话 ,默认是在你的用户目录下的 go 文件夹。 +``` +https://vscode.cdn.azure.cn/stable/c185983a683d14c396952dd432459097bc7f757f/VSCodeUserSetup-x64-1.55.0.exe +``` -这时要再说一点,GO 项目中,一般来说它的工作目录结构是这样的: +再把这个链接贴到你的下载工具(我使用的是 FDM),下载速度就飞快了。 -- bin目录:包含了可执行程序,注意是可执行的,不需要解释执行。 +### 设置环境变量:GOROOT -- pkg目录:包含了使用的包或者说库。 +在下载并安装好 Go 后,需要对环境变量进行一些配置,其中最重要的就是 GOROOT。 -- src目录:里面包含了go的代码源文件,其中仍按包的不同进行组织。 +在GO语言中表示的是 Go语言编译、工具、标准库等的安装路径,通过它可以告诉系统你的 `go.exe` 是放在哪里,不设置的话,你后面执行 `go get` 、`go install` 的时候,系统就不认识它了。 -所以后面我的创建的GO工作目录,也是按照这个标准来,先说明一下。 +右键 `我的电脑` ,点击属性 +![](http://image.iswbm.com/20210405094512.png) -接下来,要开始配置 VS Code 环境。 -打开你的 VS Code软件,先确认你设置的环境变量已经生效,点击 `Terminal` -> `New Terminal`,使用 cmd 命令查看环境变量。 +再点击 `高级系统设置` -![](http://image.iswbm.com/20200109210630.png) +![](http://image.iswbm.com/20210405094719.png) -如上图所求,我的环境变量是OK的,如果你的输出是指向你的用户目录:`%USERPROFILE%\go` 建议你不要折腾(因为我无论重启多少次 VS Code,其记录的GOPATH始终指向%USERPROFILE%\go), 直接重启你的电脑。 +在弹出来的窗口点击 `环境变量` -好了之后,我们要从 github 上下载两个仓库,之所以要手动下载,是因为有墙的存在,在线安装的话,很多插件你会下载失败。 +![](http://image.iswbm.com/20210405094742.png) -创建目录 `src/goland.org/x/`,并进入此目录,执行命令 -```shell -$ git clone https://github.com/golang/tools.git -$ git clone https://github.com/golang/lint.git + +点击系统环境变量点的 PATH,再点击编辑 + +![](http://image.iswbm.com/20210405094931.png) + +在弹出来的窗口中,新增一条 item,内容如下,这个目录是 go.exe 所在的目录 + +![](http://image.iswbm.com/20210405095053.png) + +设置完成后,可以在 cmd 窗口中,运行 `go version`,如果可以正常运行说明,环境变量正确配置且已经生效。 + +如果执行失败,你可能需要重启电脑才能生效了噢(反正我是这样) + + + +### 设置环境变量:GOPATH + +设置完 GOROOT,还要设置 GOPATH,它会告诉 Go 你的项目是在哪个目录? + +这个环境变量,你可以像 GOROOT 一样通过电脑系统的环境变量来设置,在那里设置一个默认的工作目录(这个目录你可以自己定)。 + +![](http://image.iswbm.com/20210405095326.png) + +不过这种方法极不推荐,因为你不可能只有一个项目,我们每个项目都有自己的 GOPATH。习惯的做法是可以使用 `go env ` 命令来设置 + +``` +$ go env -w GOPATH=E:\VMP-Code\Golang ``` -点击 `File` - `Open Folder` 安装两个插件: +如果你已经在系统的环境变量中设置了 GOPATH ,那么一定移除掉,才能使用 `go env -w` 去设置,否则会报如下的警告 -第一个是:Go 语言的扩展插件 +``` +warning: go env -w GOPATH=... does not override conflicting OS environment variable +``` + +如果你移除了还报这个错误,那可能需要你重启电脑(反正我是这样) + +### 安装 Go 扩展 + +#### Go Extension + +Go 语言的扩展插件,提供了代码运行、导航、调试等最基本的功能。 + +这是是一年多前(2020年初)的截图,当时的开发者还是 Microsoft ![](http://image.iswbm.com/20200108202934.png) -第二个是:Code Runner,让你的 VS Code 能够编译运行 Go 的程序。 +现在(2021年初)再去搜索一看,发现开发者已经变成了 Google 的 Go 开发团队了。 + +![](http://image.iswbm.com/20210405113213.png) + +#### Code Runner + +编写完代码后,想运行这个 go 文件,通常情况下你得通过下面 VSCODE 提供的入口去运行,是比较麻烦的。 + +![](http://image.iswbm.com/20210405113905.png) + +点击 `create a launch.json file` 就会在项目根目录下创建一个 json 文件,创建完成后,运行的边栏就变成如下模样,再点击 那个三角运行按钮,就可以运行它了。 -![](http://image.iswbm.com/20200109153948.png) +![](http://image.iswbm.com/20210405114834.png) + +使用这种方法,需要安装一个 `dlv`,VS Code 会提示你安装它,安装完成后你会在 bin 目录下发现 `dlv.exe`。 + +![](http://image.iswbm.com/20210405125424.png) + +这种运行方法,虽然可行,但是操作路径还是有点长。 + +最符合用户使用习惯的应该是,直接有一个 `运行` 的按钮的,例如这样 + +![](http://image.iswbm.com/20210405124543.png) + +或者通常快捷键,或者右键就有运行的选择项。 + +![](http://image.iswbm.com/20210405114049.png) + +VS Code 本身不提供这样的功能,你需要安装一个叫 `Code Runner` 的扩展,安装后不需要重启 VS Code 就会失效。 + +![](http://image.iswbm.com/20210405124219.png) + +### 运行 Hello World + +以上都配置好了,就可以在 VS Code 上编写并执行代码,代码如下 + +```go +package main + +import ( + "fmt" +) + + +func main() { + fmt.Println("Hello, Golang") +} +``` + +使用 Ctrl + Alt + N ,或者右键选择 `Run Code` 就可以执行该 go 文件。 + +![](http://image.iswbm.com/20210405110854.png) + +### 设置环境变量:GOPROXY + +由于国内的一些网络问题,导致我们无法直接拉取 go 的一些工具包,这时候就要借助大神们搭建的代理地址来下载了。 + +最经常使用的是代理地址是:`https://goproxy.cn` + +``` +go env -w GOPROXY=https://goproxy.cn,direct +``` + +### 项目目录解析 + +这里要说一点,GO 项目中,一般来说它的工作目录结构是这样的: + +- bin目录:包含了可执行程序,注意是可执行的,不需要解释执行。 + +- pkg目录:包含了使用的包或者说库。 + +- src目录:里面包含了go的代码源文件,其中仍按包的不同进行组织。 + +所以后面我的创建的GO工作目录,也是按照这个标准来,先说明一下。 + +## 4. 下载 Go 工具插件 + +创建目录 `src/goland.org/x/`,并进入此目录,执行命令 + +```shell +$ git clone https://github.com/golang/tools.git +$ git clone https://github.com/golang/lint.git +``` @@ -160,6 +288,8 @@ $ go env -w GOPROXY=https://goproxy.cn,direct +- gopkgs: + ## 4. 配置环境变量 当你在终端使用 `go env` 的时候,会打印出go 相关的所有环境变量