直接用 go install 安装 Delve 即可支持断点和单步调试,无需修改源码;推荐命令为 go install github.com/go-delve/delve/cmd/dlv@latest,安装后通过 dlv debug 或 VS Code 配置 launch.json 调试。

直接用 go install 安装 Delve,再通过 VS Code 或命令行启动调试即可支持断点和单步执行,无需额外编译或修改 Go 源码。
安装 Delve(推荐 go install 方式)
Delve 官方已弃用 go get,当前标准安装方式是:
- 确保 Go 版本 ≥ 1.16(建议 1.20+)
- 运行命令:
go install github.com/go-delve/delve/cmd/dlv@latest - 安装完成后,执行
dlv version验证是否成功,输出类似Delve Debugger Version: 1.23.0 - 确认
$GOPATH/bin(或$GOBIN)已加入系统 PATH,否则终端无法识别dlv命令
命令行方式调试(快速验证)
适合轻量调试,不依赖 IDE:
- 进入项目根目录(含
main.go),运行:dlv debug - 进入 Delve 交互界面后,可用常用命令:
-
b main.main—— 在 main 函数入口设断点 -
b main.go:15—— 在第 15 行设断点 -
c(continue)—— 继续执行到下一个断点 -
n(next)—— 单步执行(不进入函数) -
s(step)—— 单步进入函数内部 -
p variableName—— 打印变量值 -
q—— 退出调试
-
VS Code 中配置调试(最常用场景)
在项目根目录创建 .vscode/launch.json,内容如下:
立即学习“go语言免费学习笔记(深入)”;
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch Package",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "${workspaceFolder}",
"env": {},
"args": []
}
]
}
注意点:
- 确保已安装 VS Code 插件 “Go”(由 Go Team 官方维护)
- 插件会自动检测并提示安装 Delve,点击安装即可(本质仍是
go install) - 在代码左侧 gutter 点击可设断点,按
F5启动调试,F10/F11分别对应 next/step - 如遇
dlv not found,检查插件设置中 “dlv path” 是否指向正确路径(例如$GOPATH/bin/dlv)
常见问题与绕过技巧
调试失败多数源于环境或权限问题:
- macOS 上提示 “not authorized to debug”:需将终端(如 iTerm / Terminal)加入「系统设置 → 隐私与安全性 → 完全磁盘访问」
-
Linux 下无法 attach 进程:可能需关闭 ptrace 限制,临时执行
echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope -
断点未命中:检查是否在优化构建(如加了
-ldflags="-s -w")下运行;Delve 要求保留调试信息,避免使用这些标志 -
调试测试文件:用
dlv test替代dlv debug,支持-test.run等参数










