You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用nvim-dap如何在同一会话中附加多个进程进行调试

nvim-dap原生支持并行多调试会话,无需额外依赖即可实现你要的同时附加多进程的需求,两种常见实现方式:

  • 手动分步操作
    每次执行require'dap'.continue()选择一个目标配置完成附加后,再次执行该命令即可启动新的调试会话,原有调试会话会保持运行状态,不会被覆盖。你可以重复三次操作分别附加三个Node进程,再额外配置Chrome调试适配器后同样操作附加Chrome进程即可。
    多会话运行时可通过require'dap'.list_sessions()唤起会话列表切换不同调试目标,查看对应断点、堆栈和控制台输出。
  • 一键自动附加所有预设配置
    直接封装自定义Lua函数批量调用dap的run接口即可实现类似VS Code复合启动的效果,示例代码如下:
    -- 批量附加所有预设的Node调试配置
    local dap = require('dap')
    function _G.dap_attach_all_node()
      -- 也可以自己硬编码指定要启动的配置列表,不需要遍历全部配置
      local target_configs = {
        dap.configurations.javascript[1],
        dap.configurations.javascript[2],
        dap.configurations.javascript[3],
        -- 加Chrome配置的话在这里加对应的配置项即可
      }
      for _, conf in ipairs(target_configs) do
        dap.run(conf)
      end
    end
    -- 绑定自定义快捷键触发
    vim.keymap.set('n', '<leader>dA', _G.dap_attach_all_node, { desc = 'DAP attach all preset configurations' })
    
    如果需要同时附加Chrome进程,只需要先配置好pwa-chrome类型的调试适配器和对应的attach配置,把Chrome的配置项也加入上面的target_configs列表即可。

小提示:你可以搭配nvim-dap-ui的多会话视图使用,各个调试会话的上下文信息会分开展示,更方便排查问题。

内容的提问来源于stack exchange,提问作者Brody Jackson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 20:06:03