是否有命令行参数或环境变量禁用节点调试器的“第一行中断”功能?
解决方法
在节点中实际上有两个调试器概念:V8调试器(具有基于TCP的协议)和节点命令行调试器(CLI)。
当运行节点调试app.js时,在主节点进程中运行调试器CLI,并为调试的脚本(node –debug-brk app.js)生成一个新的子节点进程。选项–debug或–debug-brk用于在子进程中打开V8调试器。
–debug和–debug-brk之间的区别是后者在第一行添加一个断点,因此执行立即停止。
我建议你这个解决方案:
>当您从Web服务器创建子进程时,请运行node –debug而不是节点调试。这种方式只有一个子进程创建,它正在运行您的应用程序,它不是暂停在第一行。
>现在您可以使用任何支持V8 debugger protocol – 节点内置CLI调试器,node-inspector的调试工具,或者您可以根据需要事件实现自己的调试器前端(GUI)。 (我假设这是你想通过在后台运行CLI调试器实现)?
如果您决定使用内置CLI,只需生成另一个子进程,并告诉节点CLI调试器连接到在步骤1中启动的进程:
node debug localhost:5858
并像以前一样继续。