作者:手机用户2602931615 | 来源:互联网 | 2023-01-20 17:29
在我的Ubuntu 16.04上,我使用IntelliJ IDEA ultima 2017.2以及节点v6.11.2和npm v3.10.10并且想要调试node.js应用程序,它具有以下package.json 开始条目:
"start:" "npm-run-all --parallel serve-static open-static"
根据控制台输出和类似的SO问题,我需要添加$ NODE_DEBUG_OPTION作为第一个参数(用于节点)以避免连接拒绝错误.Obvioulsy,我试过了
在运行/调试配置中添加$ NODE_DEBUG_OPTION作为参数
以及作为节点选项
这导致了如下调用
node npm-cli.js run start-debug --scripts-prepend-node-path=auto $NODE_DEBUG_OPTION
和
node $NODE_DEBUG_OPTION npm-cli.js run start-debug --scripts-prepend-node-path=auto
在每种情况下,$ NODE_DEBUG_OPTION都没有解析,节点将其视为不存在的文件.
我也试图直接添加变量的package.json像
"start:" "npm-run-all $NODE_DEBUG_OPTION --parallel serve-static open-static"
这也会导致找不到模块.../$ NODE_DEBUG_OPTION错误.
那么,我如何通过这个选项来调试IntelliJ IDEA中的那个东西?
谢谢
1> lena..:
加入$NODE_DEBUG_OPTION
到package.json
手工是来调试应用程序通过NPM脚本启动的唯一方法,因为你必须确保Node.js的启动与相应的调试选项(--debug-brk
,--inspect-brk
,等),以及IDE无法控制的方式子进程产生 - 它只能在启动时将选项传递给主进程.但是这个选项必须传递给Node.js - 而不是传递给npm-cli.js,npm-run-all等.如果npm-run-all是一个启动应用程序的npm脚本,你想用节点调试.js,你需要相应地修改这个脚本,如:
"npm-run-all": "node $NODE_DEBUG_OPTION myapp.js"
如果你的任务运行了一个shell脚本,那么,用node.js运行你的应用程序,你需要修改一个shell脚本......目标是用调试选项启动节点进程