干活时随便升级了一下vscode,然后go就没法调试了,报错为:
Version of Go is too old for this version of Delve (minimum supported version 1.15, suppress this error with --check-go-version=false)
是go的delve版本太高了导致没有办法用。
在GOPATH下的bin目录,使用./dlv version命令查看dlv的版本。
[root@vm10-0-0-51 bin]# ./dlv version
Delve Debugger
Version: 1.6.1
Build: $Id: 114218c22f3791287c4bc2f4ff35a846a1416ee9 $
需要下载一个低一点的版本,我决定下载1.4.0的
git网址:https://github.com/go-delve/delve/tree/v1.4.0
clone到自己的go环境上,cd进去后,使用make install进行安装。
安装完后发现vscode使用的是dlv-dap执行文件,查找资料https://gitee.com/snow2zhou/vscode-go/blob/master/docs/dlv-dap.md后发现,其实就是改了dlv个名字。
cp dlv dlv-dap就可以了
再调试就没问题了
或者直接使用go的dlv进行调试,在vscode的launch文件中加上如下参数:
"debugAdapter": "dlv"
这样就会使用go自带的dlv
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)