登录
首页 >  Golang >  Go问答

dlv dap 无法启动

来源:stackoverflow

时间:2024-02-29 11:12:24 415浏览 收藏

今日不肯埋头,明日何以抬头!每日一句努力自己的话哈哈~哈喽,今天我将给大家带来一篇《dlv dap 无法启动》,主要内容是讲解等等,感兴趣的朋友可以收藏或者有更好的建议在评论提出,我都会认真看的!大家一起进步,一起学习!

问题内容

当我在 vscode dlv dap debug 中启动时,我收到以下消息:

couldn't start dlv dap:
error:timed out while waiting for dap server to start

我已经有了项目的启动配置:

午餐.json:

{
"version": "0.2.0",
"configurations": [
    {
        "name": "launch file",
        "type": "go",
        "request": "launch",
        "mode": "debug",
        "program": "${workspacefolder}",
        "showlog": true,
        "env": {
            "go111module": "on"
        }
    }
]
}

setting.json 是:

{
"folders": [
    {
        "path": "."
    }
],
"settings": {
    "go.useCodeSnippetsOnFunctionSuggestWithoutType": true,
    "go.autocompleteUnimportedPackages": true, 
    "go.gocodePackageLookupMode": "go",
    "go.gotoSymbol.includeImports": true,
    "go.useCodeSnippetsOnFunctionSuggest": true,
    "explorer.confirmDelete": false,
    "go.formatTool": "goimports",
    "go.docsTool": "gogetdoc",
    "go.buildFlags": [],
    "explorer.confirmDragAndDrop": false,
    "window.zoomLevel": 0.8,
    "editor.minimap.enabled": false,
    "go.useLanguageServer": true,
    "go.delveConfig":{
        "debugAdapter":"dlv-dap"
        },
    "[go]": {
        "editor.snippetSuggestions": "none",
        "editor.formatOnType": true,
        "editor.formatOnSave": true,
        "editor.codeActionsOnSave": {
            "source.organizeImports": true
        }
    },
    "gopls": {
        "experimentalWorkspaceModule": true,
        "usePlaceholders": true, // add parameter placeholders when completing a function
        "completionDocumentation": true // for documentation in completion items
    }
},
    
}

项目结构如图:


正确答案


您可能会幸运地将 delveconfig 切换为使用旧模式:

"go.delveConfig":{
        "debugAdapter":"legacy"
        }

我和我的团队最近在更新 vscode 后开始看到同样的问题。这里有关于此设置的更多信息:https://go.googlesource.com/vscode-go/+/HEAD/docs/debugging.md#switching-to-legacy-debug-adapter,但我相信根本原因(如果这确实解决了您的问题)将是您的 golang 版本不是 dlv-dap 的目标版本。 go 1.15 以下版本都需要使用旧模式,而最新版本的 delve 调试器现在默认会跳过旧模式。

在此更改生效之前,我还需要终止 vscode。根据 dlv-dap 文档,您还可以通过将 launch.json 的模式切换为“远程”来强制其进入旧模式,因此可能有一些(也许更好)的方法来解决此问题。

this由于最近更新了 VS Code Go extension,可能会发生这种情况。

第一个选项是通过从命令面板运行 “go:安装/更新工具” 命令来修复它(linux/windowsctrl+shift+pmac⇧++p)。

然后,从菜单中标记 dlvdlv-dap,然后点击确定开始安装/更新。

第二个选项是使用旧版调试适配器。有关此内容的更多信息,请参见下面的链接...

查看完整文档:https://github.com/golang/vscode-go/blob/master/docs/debugging.md

终于介绍完啦!小伙伴们,这篇关于《dlv dap 无法启动》的介绍应该让你收获多多了吧!欢迎大家收藏或分享给更多需要学习的朋友吧~golang学习网公众号也会发布Golang相关知识,快来关注吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>