Go开发笔记系列:1 - Go 开发环境搭建和代码调试
写这篇笔记的目的,主要是分享我在Go学习中遇到的坑。让后面的学习者参考一下有用的经验。
其中有一些小技巧,对初学者来说,可能会大大节约填坑的时间。
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。比如如何设置vscode的Go调试器,Go的语法高亮,Go的插件下载加速和跨墙访问。
如果其他朋友有类似经验和技术,也不妨分享和交流,谢谢
目录
主要分为以下,三个部分
Part 1: Go环境的安装
Part 2: vs code的安装
Part 3: vs code 安装Go 开发环境
Part 4: vs code 配置Go 断点调试
正文
Part 1: Go环境的安装
step 1: 下载Go语言环境安装包,地址如下 https://golang.google.cn/dl/ 这里,我选择下载go1.13.4的 两个版本二进制安装文件包: linux x64 和 windows x64。 后面,我将演示在windows下面,以windows x64 二进制安装包,安装Go语言环境。step 2:
解压Go安装包,到自定义的安装目录,如下:
安装目录 = E:\Program Files\develop\runtime\go_1.13.4
step 3: 设置Go的如下环境变量 # Go 的项目源代码的根目录,结尾不带\ 变量1 => GOPATH = H:\go_work_git # Go 的环境安装包的根目录,结尾不带\ 变量2 => GOROOT = E:\Program Files\develop\runtime\go_1.13.4 打开“控制面板”,输入查询条件“高级”,找到“高级系统设置”单击后,进行系统环境变量的设置。
新增环境变量GOROOT,如下
修改PATH变量,末尾增加GO的编译器路径“;%GOROOT%\bin",中间分隔符是【;】。
修改CLASSPATH变量,末尾增加GO的编译器路径“;%GOROOT%\lib",中间分隔符是【;】。
新增环境变量GOPATH,如下。备注:这个不是GOROOT目录,而是你所有GO项目代码的父目录。
step 4:
验证上面GO语言环境配置成功,命令如下# 输出环境变量 GO语言的安装目录 CMD >> echo %GOROOT% # 输出环境变量 GO源代码的工作目录 CMD >> echo %GOPATH% # 输出GO语言版本 CMD >> go version
Part 2: vs code的安装
step 1:
下载vs code,官方安装包下载地址如下
https://code.visualstudio.com/Download 注意,vs code 建议选择版本System, 而不是User。另外,根据自己的操作系统类型和操作系统位数,选择对应版本下载。 我这里,本地是windows x64操作系统,所以选择如下图的安装包下载Step 2
安装提示,选择要安装的目录,也可以自己修改目录,然后按照提示一路Next和OK按钮就可以了。
Part 3: vs code 安装Go 开发环境
Step 1
安装Go开发环境,常用的插件,如下
Rich Go language support for Visual Studio Code == Go语言智能显示 Go Doc === Go语言注释的定义及使用 Go Autotest === Go 自动化 测试工具 Go To Method === 转到文档中声明的方法 code runner == 支持多种语言run/debug用途的run code插件 gopls == 为每种语言实现诸如自动完成, 代码提示等功能 ## 介绍 https://studygolang.com/articles/23290?fr=sidebardlv == 为每种语言实现debug功能的插件 ## 介绍 https://www.jianshu.com/p/7373042bba83 Auto Import == 自动导入缺少的package # 命令行,下载其他go插件
cmd >> go get -v golang.org/x/tools/gopls cmd >> go get -v github.com/go-delve/delve/cmd/dlv" to install.
step 2 安装Go插件,操作方法,如下
Step 3:
安装GoProxy插件,同时配置GoProxy加速代理地址。
因为默认的Go插件地址是github/xxx/{go 插件名称},是在国外所以下载速度很慢,同时也容易被墙。
所以,通过GoProxy插件和代理地址,我们可以在不改变go get -v命令的情况下,自动识别和快速下载github上的Go插件。
1. 环境变量,设置如下两个变量
变量1:GO111MODULE GO111MODULE=on 变量2:GOPROXY GOPROXY= https://goproxy.cn 2. 检查环境变量是否生效CMD >> echo %GOPROXY%
Part 4: vs code 配置Go 断点调试
step 1
检查本地项目打开目录,是否正确
# 进入Go项目的工作目录,子目录为各个GO项目 cmd >> cd H:\go_work_git # 而不是直接到go项目目录 # cmd >> cd H:\go_work_git\Yearning
查看go_work_git目录应该为go的工作根目录,并且有src/bin/pkg等自动生成的全局GO子目录。
Step 2:
打开项目代码,如Yearning
方式1:打开根目录,所有项目的工作目录, 但是注意两者的debug下面配置
CMD >> cd H:\go_work_git
CMD >> code .
# 配置debug文件,路径为 = H:\go_work_git\Yearning\.vscode\launch.json
方式2:或 者直接打开具体的项目目录, 但是注意两者的debug下面配置
CMD >> cd H:\go_work_git\Yearning
CMD >> code .
# 配置debug文件,路径为 = H:\go_work_git\Yearning\.vscode\launch.json
Step 3:
按Ctrl+Shift+D., 弹出Run View界面,如下:
step 4:
单击上图的Run > Launch 绿色三角箭头,执行断点Debug,如下图:
其中F10表示逐步Debug,F11表示进入内部上一层代码Deug
# 配置debug文件,路径为 = H:\go_work_git\.vscode\launch.json
或 配置debug文件,路径为 = H:\go_work_git\.vscode\launch.json
附录:
在vscode中,调试go项目yearning,执行-m 初始化Year系统