写这篇笔记的目的,主要是分享我在Go学习中遇到的坑。让后面的学习者参考一下有用的经验。

其中有一些小技巧,对初学者来说,可能会大大节约填坑的时间。

比如如何设置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语言环境安装包,地址如下
这里,我选择下载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,官方安装包下载地址如下

注意,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=sidebar
dlv == 为每种语言实现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
 
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 初始化Yearning系统

Go 开发环境搭建和代码调试的更多相关文章

  1. spark JAVA 开发环境搭建及远程调试

    spark JAVA 开发环境搭建及远程调试 以后要在项目中使用Spark 用户昵称文本做一下聚类分析,找出一些违规的昵称信息.以前折腾过Hadoop,于是看了下Spark官网的文档以及 github ...

  2. CUDA并行程序设计 开发环境搭建与远程调试

    课题需要用到GPU加速.目前使用的台式电脑只有核心显卡,而实验室有一台服务器装有NVIDIA GTX980独显.因此,想搭建一个CUDA的开发环境,来实现在台式机上面开发cuda程序,程序在服务器而不 ...

  3. 【OpenStack】OpenStack系列1之OpenStack本地开发环境搭建&&向社区贡献代码

    加入OpenStack社区 https://launchpad.net/,注册用户(597092663@qq.com/Admin@123) 修改个人信息,配置SSH keys.OpenPGP keys ...

  4. Eclipse + CDT + YAGARTO + J-Link,STM32开源开发环境搭建与调试

    Eclipse+CDT+YAGARTO+J-Li:开源开发环境搭建与调试:作者:Chongqing:邮箱:ycq.no1@163.com:文档版本:V1.0:发布日期:2014-08-04:前言:此文 ...

  5. Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例【附详细代码】

    http://blog.csdn.net/xiefu5hh/article/details/51707529 Spark+ECLIPSE+JAVA+MAVEN windows开发环境搭建及入门实例[附 ...

  6. Ionic2开发环境搭建、项目创建调试与Android应用的打包、优化

    Ionic2开发环境搭建.项目创建调试与Android应用的打包.优化. windows下ionic2开发环境配置步骤如下: 下载node.js环境,稳定版本:v6.9.5 下载android stu ...

  7. electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google JavaScript Style Guide代码规范

    我的electron教程系列 electron教程(一): electron的安装和项目的创建 electron教程(番外篇一): 开发环境及插件, VSCode调试, ESLint + Google ...

  8. 最新 obs-studio vs2019 开发环境搭建 代码编译

    距离上一篇文章很久了,重新开始记录 OBS 开发相关情况,第一步就是环境搭建,第二步是构建 OBS-Studio VS 2019 开发环境搭建 下载软件和资源 软件安装没有特别说明的,下载安装即可. ...

  9. (转载)JAVA敏捷开发环境搭建

    整个软件项目分为四个环境 开发本地环境.开发环境.测试环境.IDC环境.和传统C++开发不一样的模式是多了第一个开发本地环境.这是为什么呢,因为目前大部分开发人员还是比较熟悉windows下开发.对于 ...

随机推荐

  1. 谈谈集合.Map

    本文来谈谈我们平时使用最多的HashMap. 1. 简介 HashMap是我们在开发过程中用的最多的一个集合结构,没有之一.HashMap实现了Map接口,内部存放Key-Value键值对,支持泛型. ...

  2. 逐浪web无障碍与国际化以及全民族语言支持白皮书

    北京时间2019年5月10日,领先的门户网站与WEB内核服务厂商--上海Zoomla!逐浪CMS团队发布其年度重榜产品:逐浪CMS全民族语言与国际版,体验站点:http://demo2.z01.com ...

  3. JavaFX之多个FXML加载和通信

    前言 在使用了FXML设计布局后,新的问题随之而来,当一个程序需要多个界面时,我们不可能在一个FXML中写出全部布局,这样太过于臃肿不易查看和维护(当然非要这么做也是可以的),这里就涉及到如何在一个F ...

  4. css3特性简要概括

    ---恢复内容开始--- css3新增核心知识 背景和边框 文本效果 2d/3d转换 过渡和动画 多列布局 弹性盒模型 媒体查询 增强选择器 css3浏览器兼容性 css3在线工具 css3gener ...

  5. mongo的聚合操作

    对图7-1所示的数据集exampledata1,使用聚合操作实现以下功能: (1)不返回_id字段,只返回age和sex字段. (2)所有age大于28的记录,只返回age和sex. (3)在$mat ...

  6. 使用numpy和PIL实现图像的手绘效果

    输入 输出 代码如下 图像的手绘效果的实现 from PIL import Image import numpy as np a = np.array(Image.open("index.j ...

  7. JVM 常用参数一览表(转)

    参数 默认值或限制 说明 参数 默认值 功能 -XX:-AllowUserSignalHandlers 限于Linux和Solaris,默认不启用 允许为java进程安装信号处理器,信号处理参见类:s ...

  8. How to do error checking in CUDA(如何在CUDA里做错误检查)

    https://codeyarns.com/2011/03/02/how-to-do-error-checking-in-cuda/ Error checks in CUDA code can hel ...

  9. Html网页链接数据库验证账户密码(新手)

    连接代码(其中用到了连接池,不要忘记Jar包.拉入配置文件和工具类): package cn.Wuchuang.Servlet; import org.springframework.jdbc.cor ...

  10. 我的MacbookPro进水了!维修过程记录

    电脑进水与解决方案 如果事情有变坏的可能,不管这种可能性有多小,它总会发生.---墨菲定律 进水过程 2020年03月21日日下午3点左右,不小心把水杯碰倒了,水通过电脑右侧的键盘处进入了大概有10毫 ...