簡體   English   中英

無法在 VSCode 中調試 Go - 找不到 GOROOT 目錄:/snap/bin/go

[英]Can't debug Go in VSCode - cannot find GOROOT directory: /snap/bin/go

我正在使用 Ubuntu 20.04.3 LTS、VSCode 1.62.3、go 1.17.3 linux/amd64

當我在 VSCode 中啟動調試器時,它會向我顯示此警告

“dlv-dap”命令不可用。 請 select “安裝”,或按照此處的安裝說明進行操作。 來源:Go(擴展)[安裝] [全部安裝]

我單擊安裝並在 output 中看到:

Tools environment: GOPATH=/home/raspberry/GolandProjects
Installing 1 tool at /home/raspberry/GolandProjects/bin in module mode.
  dlv-dap

Installing github.com/go-delve/delve/cmd/dlv@master FAILED
{
 "killed": false,
 "code": 2,
 "signal": null,
 "cmd": "/usr/local/go/bin/go get -x -d github.com/go-delve/delve/cmd/dlv@master",
 "stdout": "",
 "stderr": "go: cannot find GOROOT directory: /snap/bin/go\n"
}

1 tools failed to install.

dlv-dap: failed to install dlv-dap(github.com/go-delve/delve/cmd/dlv@master): Error: Command failed: /usr/local/go/bin/go get -x -d github.com/go-delve/delve/cmd/dlv@master
go: cannot find GOROOT directory: /snap/bin/go

當我通過 go 工具檢查 GOROOT 時,我看到:

$ go env GOROOT
/usr/local/go

當我檢查 /snap/bin/ 時,我看到:

~$ cd /snap/bin/
:/snap/bin$ ls
canonical-livepatch  pre-commit.validate-config
go                   pre-commit.validate-manifest
gofmt                snap-store
go.gofmt             snap-store.ubuntu-software
pre-commit           snap-store.ubuntu-software-local-file

我很困惑,有 /snap/bin/go 但是 VSCode 告訴我沒有並且無法運行調試器。 如何解決?

更新 1

當我通過在控制台中輸入以下內容將 GOROOT 設置為 /snap/bin/go 時:

$ export GOROOT=/snap/bin/go

當我嘗試運行調試器時,VSCode 開始打印:

Couldn't find dlv-dap at the Go tools path, /home/raspberry/GolandProjects/, /home/raspberry/GolandProjects or /usr/local/go/bin:/home/raspberry/.local/bin:/home/raspberry/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Follow the setup instruction in https://github.com/golang/vscode-go/blob/master/docs/debugging.md#getting-started.

所以,這里是修復 - 添加到 VSCode Preferences: Open Settings (JSON)這一行

"go.goroot": "/snap/go/current"

這是解釋 - https://github.com/golang/vscode-go/issues/166

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM