一、生成代码签名证书
1 打开"钥匙串访问"
2 打开菜单 钥匙串访问/证书助理/创建证书...
3 名称: dlv-cert 身份类型: 自签名证书 证书类型: 代码签名 并 选择"让我覆盖这些默认值"
4 单击"继续", 有效期(天数): 365 这里你可以自己修改, 我改为3650
5 一路继续下去, 直到看到"指定用于该证书的位置" 钥匙串 选择 "系统" 并单击"创建"按钮
6 重启系统之后, 再打开"钥匙串访问", 选择"系统", 就会看到创建好的"dlv-cert"证书.
7 右键"dlv-cert"证书, 选择"显示简介"->"信任"->"代码签名" 修改为: 始终信任
二、安装调试器dlv
sudo go get -u github.com/derekparker/delve/cmd/dlv
安装完毕后会在$GOBIN目录下生成一个名为dlv可执行文件,将其移动到$GOROOT/bin目录下
三、给调试器签名,签名完毕后重启。
因为mac下调试代码需要对调试器签名,不然会报告一些错误。
sudo codesign -s "dlv-cert" $GOROOT/bin/dlv
步骤过程中出现任何问题,请重启计算机
四、配置项目的launch.json(菜单:调试-打开配置)
主要需要配置的有2个,program是目标文件位置,args是运行时参数。配置保存后,按下F5就可以开心的调试了。另外如果有问题,就加上"backend":"native",注意文件json格式的正确性
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "go",
"request": "launch",
"mode": "debug",
"remotePath": "",
"port": 2345,
"host": "127.0.0.1",
"program": "${workspaceRoot}/cmd/cooper",
"env": {},
"args": ["-config=/Users/Fred/go/bin/cooper.toml", "-res=/Users/Fred/go/bin/res"],
"showLog": true,
"backend":"native"
}
]
}