如何利用VSCode开发调试适配器插件,并优化调试思路?
- 内容介绍
- 文章标签
- 相关推荐
本文共计809个文字,预计阅读时间需要4分钟。
直接上结论:
为什么 launch.json 配置后点 F5 没反应?
绝大多数“没反应”问题,其实卡在协议初始化阶段,VSCode 根本没和你的适配器建立通信。常见原因包括:
-
package.json中contributes.debuggers.type和launch.json里的type不一致,比如扩展声明的是"type": "mylang",但用户配置写成了"type": "my-language" - 没设置正确的激活事件:
"activationEvents": ["onDebugResolve:mylang"]缺失或拼错,导致插件压根没被加载 - 适配器进程启动失败但无报错:比如
DebugAdapterExecutable指向的脚本路径错误、Node.js 版本不兼容、或脚本里抛了未捕获异常(此时需查Output → Log (Extension Host)) -
launch.json缺少必需字段:例如program字段未定义,而你在configurationAttributes中把它标为"required": true,VSCode 会静默跳过该配置项
如何验证 DAP 通信是否真正跑通?
别等断点命中才确认——先看最底层的消息收发。
本文共计809个文字,预计阅读时间需要4分钟。
直接上结论:
为什么 launch.json 配置后点 F5 没反应?
绝大多数“没反应”问题,其实卡在协议初始化阶段,VSCode 根本没和你的适配器建立通信。常见原因包括:
-
package.json中contributes.debuggers.type和launch.json里的type不一致,比如扩展声明的是"type": "mylang",但用户配置写成了"type": "my-language" - 没设置正确的激活事件:
"activationEvents": ["onDebugResolve:mylang"]缺失或拼错,导致插件压根没被加载 - 适配器进程启动失败但无报错:比如
DebugAdapterExecutable指向的脚本路径错误、Node.js 版本不兼容、或脚本里抛了未捕获异常(此时需查Output → Log (Extension Host)) -
launch.json缺少必需字段:例如program字段未定义,而你在configurationAttributes中把它标为"required": true,VSCode 会静默跳过该配置项
如何验证 DAP 通信是否真正跑通?
别等断点命中才确认——先看最底层的消息收发。

