背景
无法调试1.20版本b
报错如下:
No goroutine selected
懒人不想升级goland版本。
处理方法
1.安装最新的dlv工具
go install github.com/go-delve/delve/cmd/dlv@latest
2.找到刚刚安装的dlv工具,并复制
# 位于$GOPATH的bin目录下,如果不知道$GOPATH在哪里,可以执行go env查看
$GOPATH/bin/
3.找到goland的安装路径
# ls -ls xxxxx\JetBrains\GoLand 2022.3\plugins\go-plugin\lib\dlv
# total 0
# drwxr-xr-x 1 0 May 23 21:48 linux/
# drwxr-xr-x 1 0 May 23 21:48 linuxarm/
# drwxr-xr-x 1 0 May 23 21:48 mac/
# drwxr-xr-x 1 0 May 23 21:48 macarm/
# drwxr-xr-x 1 0 Nov 11 15:37 windows/
# drwxr-xr-x 1 0 May 23 21:48 windowsarm/# 我的是win10系统,所以进入windows,根据不同系统进入不同路径
xxxxx\JetBrains\GoLand 2022.3\plugins\go-plugin\lib\dlv\windows
4.备份该路径下的dlv.exe文件
不同系统该路径下的dlv文件后缀不同,根据系统实际情况备份
# 备份dlv文件
"dlv.exe" -> "dlv-bak.exe"
备份好后,进行下一步操作
5.粘贴刚才的dlv文件到该目录下
6.重启goland
7.尝试debug
验证是否debug正确,如果正确则可以使用该dlv。
如果不正确,那就没办法只能升级goland版本了,把刚才新的dlv文件删除,最后再把备份的dlv,重命名回原名称。
参考:
GoLand - Delve 调试器版本升级 - 高小菜打怪路 (muwaii.com)