VS Code可通过launch.json配置多个调试配置并用compounds组合启动多进程调试;需确保各配置name唯一、端口不冲突、依赖关系合理,并利用调试视图高效管理会话。

VS Code 支持同时调试多个进程,关键在于合理配置 launch.json 中的多个调试配置,并通过 复合配置(compounds) 启动它们。
配置多个独立的 launch 配置
在 .vscode/launch.json 的 configurations 数组中,定义多个调试项,每个对应一个进程。例如:
确保每个配置有唯一 name,并正确设置 type、program(或 request、url 等),以便 VS Code 能分别启动和附加。
用 compounds 组合启动多个调试器
在 launch.json 根层级添加 compounds 字段,引用多个已定义的 name:
"compounds": [
{
"name": "Backend + Frontend",
"configurations": ["Launch Server", "Launch Client"]
}
]
保存后,调试面板的下拉菜单会出现 “Backend + Frontend” 选项,点击 ▶ 即可一键启动两个进程,并各自进入调试状态。
注意端口、启动顺序与依赖关系
多进程调试常见问题往往不是配置本身,而是运行时冲突:
- 避免端口占用:前后端不要监听同一端口(如都用 3000)
- 控制启动节奏:如果前端依赖后端就绪,可在前端配置中启用
webRoot+skipFiles,或使用preLaunchTask触发等待脚本(如sleep 2s && npm start) - 调试器兼容性:确认所用扩展(如 Node Debug, Chrome Debugger, Python)都已安装且版本匹配
调试体验优化技巧
多个调试会话共存时,善用 VS Code 的调试视图提升效率:
- 顶部调试工具栏会显示所有活动会话,可单独暂停/重启/停止任一进程
- “变量”、“监视”、“调用堆栈”面板自动按当前选中的会话切换上下文
- 在终端中查看各进程输出:VS Code 为每个调试配置自动创建独立的 debug 终端(启用
console: "integratedTerminal"可见)
基本上就这些。不复杂但容易忽略的是 compound 的命名一致性与端口隔离——配对成功后,F5 一次就能进全栈断点。










