使用VSCode调试器

时间:2018-11-30 19:09:27

标签: node.js debugging visual-studio-code vscode-debugger

我正在测试VS Code节点调试器,但是尝试连接到正在运行的进程时找不到任何节点进程。

这是我的launch.json文件:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "attach",
            "name": "Attach by Process ID",
            "processId": "${command:PickProcess}"
        }
    ]
}

package.json文件的内容:

  "scripts": {
    "start": "node --inspect=0.0.0.0:9229 ./bin/www"
  }

使用“ npm start”启动进程后,按“开始调试”,节点进程的列表为:

  • 1个sssd_pam
  • 1 sssd_nss
  • 1 sssd_be

看起来像this,但这些都不是我刚刚启动的服务器。 即使关闭了节点服务器,该列表仍然存在。

为什么在VSCode进程附件中看不到任何正在运行的节点进程?

P.s。我正在密切关注this关于使用VS Code调试Node.js的教程。

1 个答案:

答案 0 :(得分:0)

您是否在npm start内以调试模式运行NodeJS?您需要使用--inspect标志。没有此标志,NodeJS解释器将不会打开要附加到VSCode的调试端口。

引用:https://nodejs.org/en/docs/guides/debugging-getting-started/

另一个选择是使用端口定义进行附加。我通常在launch.json中执行以下操作:

{
  "type": "node",
  "request": "attach",
  "name": "Attach",
  "port": 9229,
  "restart": true,
  "sourceMaps": true,
  "protocol": "inspector"
}

然后我以node --inspect=0.0.0.0:9229 start.js

的身份启动NodeJS进程。