Golang 在mac上用VSCode开发、Delve调试
本文包含以下内容:
1.安装VSCode;
2.用Delve调试Go项目;
3.自定义代码片段;
1.安装VSCode
先去下载VSCode,这个链接里面也有官方文档。
安装插件:

vscode-icons这个插件可以让VSCode显示文件的图标,让你更容易辨识项目内繁杂的文件,如图:

注意:
用VSCode打开Go项目时,打开项目所在的目录,
也就是标准的 /bin /pkg /src这三个文件夹所在的那个目录,
而不是打开某个具体的.go文件,否则代码自动补全功能会异常!
2.用Delve调试Go项目
安装Delve,推荐 brew install go-delve/delve/delve ,不用自己配置很多麻烦的东西。
如果遭遇错误,应该就是/usr/local存在权限问题,sudo chmod -R 777 /usr/local 。
在VSCode打开的go项目文件内启动调试:调试 - 启动调试(F5),
不出意外,应该会看到错误提示,打开launch.json文件:

name 随意配置;
port 只要不是常用的端口,应该就不会存在冲突了,随意配置;
program 配置Go项目启动文件路径,即main函数所在的.go文件的路径,
${workspaceRoot}代表项目的根目录,
也就是 /bin /pkg /src这三个文件夹所在的目录;
env 可以用来配置调试启动时所用的环境变量参数,
比如gopath临时设置为某个参数就可以在这里指定,
如果有多个gopath,用英文冒号:来连接多个gopath;
trace 可以打印Delve执行的日志,在控制台会输出这个日志的目录,如图:

再次按下启动调试,可以看到调试控制台输出:

VSCode顶部也出现了,推荐使用快捷键进行操作:

添加断点可以在行号左边点击鼠标左键,会出现小红点,再次点击就可取消断点:

如果执行调试失败,可查看上文提到的trace选项记录下的logs文件内的信息。
打开日志文件,可以看到Delve打印的一些信息:

可以看到Delve程序所在的目录,还有程序主进程运行退出时的返回码。
(博主在安装Delve时走了弯路,所以本机有两个Delve,
当时执行的不是用Homebrew安装的,钥匙串没有配置好。
所以,当时通过查看这个日志才发现执行调试的并不是通过Homebrew安装的,
然后立即删除有问题的dlv,再次启动调试,问题解决!)
3.自定义代码片段
选择菜单:Code - 首选项 - 用户代码片段,弹出的列表里点击Go,会进入到go.json文件内,
然后按照样例进行编辑即可。
比如,我定义的defer闭包,格式使用ASCII符号来控制(\n、\t等):

在VSCode打开的.go文件内输入fdefer,就会看到:

然后回车,就会看到光标在1的位置,按下tab就会跳到2处:

尽情享受VSCode带给你的快乐吧!
Ficow原创,转载请注明出处:http://www.cnblogs.com/ficow/p/6785905.htm
Golang 在mac上用VSCode开发、Delve调试的更多相关文章
- Mac上利用VScode配置c/c++开发环境
Mac上利用VScode配置c/c++开发环境 哭辽,Typora里面最好不要插入表情,不然保存会闪退 首先你要有一个vscode 在扩展里面下载c/c++ 第一步 ⬆+com+p 打开命令模式:选择 ...
- 【翻译】在Mac上使用VSCode创建你的第一个Asp.Net Core应用
Setting Up Your Development Environment 设置你的开发环境 To setup your development machine download and inst ...
- mac 上配置flutter开发环境
(ios,Android,Xcode,Android Studio,VScode,IDEA) 1)安装Flutter SDK 2)iOS 环境配置 3)Android Studio配置 4)VS co ...
- windows上使用VsCode开发C/C++
使用VsCode+makefile开发C/C++ 1. 介绍 vscode作为现在越来越受欢迎的编辑器之一,因为可以使用插件让vscode支持几乎市面上所有的编程语言,由于笔者主要接触的是 C/C++ ...
- mac上配置java开发环境
项目在mac上跑起来的步骤: 1. 访问,https://brew.sh/ 装上这个然后 brew install git brew install maven, settings.xml需要放 ...
- mac上配置php开发环境
玉忠之前在我的mac上配置过,当时项目不能区分大小写,所以就没成功,我现在在他得基础上继续配置,希望成功. 教程:http://my.oschina.net/joanfen/blog/171109 以 ...
- 在mac上如何用safari浏览器调试ios手机的移动端页面
第一步 打开iphone手机的开发者模式,流程是:[设置]->[Safari]->[高级]->开启[Web检查器] 第二步 打开Mac上Safari的开发者模式,流程是[Safari ...
- 在mac上使用vscode创建第一个C++项目
https://blog.csdn.net/bujidexinq/article/details/106539523 准备工作:安装好vscode安装插件『C/C++』正式开始:首先是创建一个空的文件 ...
- (转)在mac上配置cocos2d-x开发环境
转自:http://www.cnblogs.com/xiaodao/archive/2013/01/08/2850751.html 一.下载cocos2d-x最新安装包 在终端中cd到本地将要存放目录 ...
随机推荐
- SEO-长尾词与分词技术
长尾关键词与分词技术 长尾关键词:网站非目标关键词,能给网站带来流量的关键词. 例如:主关键词是成都网站建设 那么,跟成都网站建设相关的词,就叫做长尾关键词. 比如:成都网站建设哪里好?成都网 ...
- H5 内联 SVG
HTML5 内联 SVG HTML5 画布 HTML5 画布 vs SVG HTML5 支持内联 SVG. 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics ...
- 关于js中两种定时器的设置及清除(转载)
1.JS中的定时器有两种: window.setTimeout([function],[interval]) 设置一个定时器,并且设定了一个等待的时间[interval],当到达时间后,执行对应的方法 ...
- 【Unity编程】四元数(Quaternion)与欧拉角
版权声明:本文为博主原创文章,欢迎转载.请保留博主链接:http://blog.csdn.net/andrewfan 欧拉旋转.四元数.矩阵旋转之间的差异 除了欧拉旋转以外,还有两种表示旋转的方式:矩 ...
- Git远程仓库(二)
昨天讲了Git安装使用和基本的命令,今天我说一下如何通过Git将本地管理的仓库添加到远程库 首先我们需要在www.github.com(如果打不开网页,请注意科学上网)上注册一个免费的账号,邮箱验证完 ...
- git submodule 使用过程中遇到的问题
git submodule 使用过程中遇到的问题 资源文件 原.gitmodules文件的内容如下: [submodule "Submodules/FFmpegWrapper"] ...
- 性能测试分享: Jmeter的源码分析main函数参数
性能测试分享: Jmeter的源码分析main函数参数 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大 ...
- 手机自动化测试:Appium源码之API(2)
手机自动化测试:Appium源码之API(2) TouchAction AppiumDriver的辅助类,主要针对手势操作,比如滑动.长按.拖动等.TouchAction的原理是讲一系列的动作放在 ...
- 使用VS2015将解决方案同步更新到Github上
如今开源已经是一种趋势与潮流了,今天就来谈一谈如何将利用VS将我们的解决方案同步更新到Github上. 第一步:登录自己的Github账号(没有的自行注册). 我的Github登录后的界面: 第二步: ...
- vim中文帮助文档安装
vim自带的帮助手册是英文的, 对平时编程的人来说没有多大阅读困难,在何况还有"星级译王"呢, 但是我猜和我一样连英语四级都愁的大有人,可偏偏就有一帮好心人人将其翻译成了中文, 可 ...