如何在 IntelliJ Idea 中调试 NodeJS 应用程序?

DP_*_*DP_ 0 javascript debugging intellij-idea node.js

我有一个 NodeJS 项目,其package.json文件包含以下几行:

"scripts": {
  [...]
  "start:dev": "cross-env NODE_ENV=local supervisor --watch src -- -r '@babel/register' src/server/index.js",
  [...]
}
Run Code Online (Sandbox Code Playgroud)

我可以使用在命令行中启动程序npm run start:dev

现在我想调试一些代码。为此,我使用以下参数在 Idea 中创建了一个 NodeJS 运行配置(粘贴cross-env NODE_ENV=local supervisor --watch src -- -r '@babel/register' src/server/index.jsNode Parameters)。

运行/调试配置对话框

当我运行它时,我收到以下错误:

/usr/bin/node cross-env NODE_ENV=local supervisor --watch src -- -r '@babel/register' src/server/index.js
Debugger listening on ws://127.0.0.1:43392/5a2c1e8e-a508-4578-8eb0-2bc4f4a63b30
For help, see: https://nodejs.org/en/docs/inspector
Debugger attached.
Waiting for the debugger to disconnect...
internal/modules/cjs/loader.js:775
    throw err;
    ^

Error: Cannot find module '/home/JIT/d.pisarenko/Development/Repositories/git/myproject/cross-env'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:772:15)
    at Function.Module._load (internal/modules/cjs/loader.js:677:27)
    at Function.Module.runMain (internal/modules/cjs/loader.js:999:10)
    at internal/main/run_main_module.js:17:11 {
  code: 'MODULE_NOT_FOUND',
  requireStack: []
}

Process finished with exit code 1
Run Code Online (Sandbox Code Playgroud)

为了能够在 Idea 中启动应用程序并调试它,我需要更改什么?

DP_*_*DP_ 6

找到了答案。您需要单击脚本定义旁边的绿色箭头(第 8 行和第 9 行旁边):

截屏

您可以在此处选择是运行还是调试脚本。