使用VSCode调试器找不到节点进程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用VSCode调试器找不到节点进程相关的知识,希望对你有一定的参考价值。

我正在测试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'启动进程后,我按'start debug'并且节点进程列表是:

  • 1 sssd_pam
  • 1表弟
  • 1 sssd_be

看起来像this,这些都不是我刚推出的服务器。即使在关闭节点服务器之后,此列表仍然存在。

为什么我无法在VSCode进程中看到任何正在运行的节点进程?

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

答案

你是否在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"
}

然后我将NodeJS进程启动为:node --inspect=0.0.0.0:9229 start.js

以上是关于使用VSCode调试器找不到节点进程的主要内容,如果未能解决你的问题,请参考以下文章

使用 VSCode 的节点调试器时是不是可以黑盒供应商代码? [复制]

vscode 中flutter找不到模拟器

命令“颤振:新项目”导致错误(找不到命令“颤振.createProject”),我无法在 VSCODE 上调试颤振项目

Python VsCode:找不到 parser.pyx

“找不到类型‘节点’的调试适配器。”

使用 VSCode 调试 Electron 主进程代码