goland 断点调试显示“变量不可用”
问题
golang 版本升级到1.25之后,进行debug调试,调试面板显示变量不可用
解决
1、更新dlv版本
go get -u github.com/go-delve/delve/cmd/dlv@latest
go install github.com/go-delve/delve/cmd/dlv@latest
2、查看delve版本
$ dlv version
Delve Debugger
Version: 1.25.2
Build: $Id: af3df277866d7175e816eab14e56611053d4cdea $
3、设置goland 打开 Hele->Edit Customer Properties
添加dlv.path=GOPATH/bin/dlv.exe
# custom GoLand properties (expand/override 'bin\idea.properties')
dlv.path=D:/GoProject/bin/dlv.exe
4、重启goland
补充
delve有三种调试模式:
- dlv attach pid:对正在运行的进程直接进行调试(pid 为进程id)
- dlv debug:编译源文件并开始调试,main 函数位于同一目录,或者指定完整的 main 函数路径
- dlv exec filename:从二进制文件启动调试