在IntelliJ IDEA上debuggingnode.js child_process分叉示例
我想从这里使用IntelliJ IDEA 12.1.3和节点10.10debuggingchild_process 示例 。 当我从terminal运行nodejs app.js
,一切正常。 控制台输出按预期显示。 但是,当我使用IDEAdebugging相同的脚本时,控制台输出中没有消息,应用程序就在那里。 这是控制台窗口中的内容:
/usr/bin/nodejs --debug-brk=58954 app.js debugger listening on port 58954 debugger listening on port 58954
当我在没有附加debugging器的情况下在IDEA中运行脚本时,脚本按预期工作。
为什么附加debugging器会破坏脚本?
看起来像node.js中的一个bug fork给我:父进程和subprocess都接收--debug-brk=58954
开关,并尝试启动debugging器并监听端口58954。
你可以强迫孩子们使用一个空闲的端口进行debugging。 InteliJ将自动提取由subprocessselect的端口。
这是一个例子:
// Determine if in debug mode. // If so, pass in a debug-brk option manually, without specifying port. var startOpts = {}; var isInDebugMode = typeof v8debug === 'object'; if(isInDebugMode) { startOpts = {execArgv: ['--debug-brk']}; } child_process.fork('./some_module.js', startArgs, startOpts);
- Intellij Idea在debugging量angular器时挂起
- 在Webstorm / Intellij中debuggingCoffeescript jasmine-nodetesting
- 在WebStorm和npm中debugging
- debuggingReact / Node后端
- IntelliJ IDEA如何正确地将$ NODE_DEBUG_OPTION传递给npm-run-all
- babel编译器导出未定义和实际导出在一起
- 使用intellij远程debuggingnodejs
- IntelliJ使用自定义模块path时,“无法find声明去”
- 在WebStorm中设置Node.js环境variables