VSCode调试Go报错找不到GOROOT目录/snap/bin/go如何解决
问题根源
你的系统同时存在两套Go安装:一套是手动安装在/usr/local/go的官方版本,一套是通过snap安装在/snap/bin/go的版本,VSCode Go扩展识别GOROOT时出现冲突,且你手动设置的GOROOT=/snap/bin/go是错误配置——GOROOT指向Go的根目录,不是go可执行文件的路径。
解决步骤
清除错误的GOROOT配置
首先取消之前手动设置的错误GOROOT:unset GOROOT如果之前把该配置写进了
.bashrc/.zshrc等shell配置文件,记得删除对应行后执行source ~/.bashrc(对应你使用的shell类型)生效。统一VSCode Go扩展配置
打开VSCode设置(快捷键Ctrl+,),搜索以下配置项,确保值正确:go.goroot:填写/usr/local/go(和你go env GOROOT输出的正确值一致)go.gopath:填写/home/raspberry/GolandProjectsgo.toolsGopath:保持和go.gopath一致即可
手动安装dlv调试工具
打开终端直接执行安装命令,绕过VSCode自动安装的冲突问题:go install github.com/go-delve/delve/cmd/dlv@latest安装完成后,为适配旧版本Go扩展对
dlv-dap的命名要求,创建软链接:ln -s /home/raspberry/GolandProjects/bin/dlv /home/raspberry/GolandProjects/bin/dlv-dap可选:消除多版本冲突
如果你不需要snap安装的Go版本,直接卸载避免后续再出现路径冲突:sudo snap remove go验证生效
完全关闭VSCode后重新打开,启动调试即可正常运行。
内容的提问来源于stack exchange,提问作者user3805530
相关产品推荐
相关产品推荐

