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到本地将要存放目录 ...
随机推荐
- 在Ubuntu Linux下制作Windows 启动安装 USB盘
最近想 ,在Ubuntu上刻录个windows的安装U盘,在网上看了些资料,不过好多都说的很模糊,于是乎,我走了不少弯路.这里记录下来,希望了帮到大家. 首先你的有个USB吧,这里我们假定USB在ub ...
- fopen中的mode(20161115)
mode mode 参数指定了所要求到该流的访问类型.可以是以下: fopen() 中 mode 的可能值列表 mode 说明 'r' 只读方式打开,将文件指针指向文件头. 'r+' 读写方式打开,将 ...
- 腾讯QQ会员技术团队:人人都可以做深度学习应用:入门篇(下)
四.经典入门demo:识别手写数字(MNIST) 常规的编程入门有"Hello world"程序,而深度学习的入门程序则是MNIST,一个识别28*28像素的图片中的手写数字的程序 ...
- rgba兼容性处理
根据caniuse(http://caniuse.com/#search=rgba),rgba兼容性为IE9以及以上浏览器. 实例代码: <!doctype html> <html ...
- 实例PK(Vue服务端渲染 VS Vue浏览器端渲染)
Vue 2.0 开始支持服务端渲染的功能,所以本文章也是基于vue 2.0以上版本.网上对于服务端渲染的资料还是比较少,最经典的莫过于Vue作者尤雨溪大神的 vue-hacker-news.本人在公司 ...
- Power BI Embedded 与 Bot Framework 结合的AI解决方案
最近最热门的话题莫过于AI了,之前我做过一片讲 BOTFRAMEWORK和微信 相结合的帖子 如何将 Microsoft Bot Framework 链接至微信公共号 我想今天基于这个题目扩展一下,P ...
- span 右浮动折行 解决ie6/7中span右浮动折行问题
A floated box is shifted to the left or right until its outer edge touches the containing block edge ...
- empty 语句
empty 语句: 用来表明没有语句, 尽管JavaScript语法希望有语句会被执行. empty语句 用分号表示 (;) ,用来指明没有语句会被执行, 尽管此时JavaScript语法需要执行语句 ...
- [.NET] 一步步打造一个简单的 MVC 电商网站 - BooksStore(二)
一步步打造一个简单的 MVC 电商网站 - BooksStore(二) 本系列的 GitHub地址:https://github.com/liqingwen2015/Wen.BooksStore 前: ...
- 【转】关于swf安全沙箱冲突:不能被本地访问
错误提示:SWF 文件不能被本地访问 不能访问本地只有仅限于文件系统的 SWF 文件和可信的本地 SWF 文件可以访问本地资源 错误信息:SecurityError:Error #2148: SWF ...