我有一个需要调试的npm脚本。我使用vscode,所以我想创建一个调试配置,并使用调试器逐步执行它。
我的npm脚本如下:
"scripts": {
...
"dev": "node tasks/runner.js",
}
所以我创建了以下调试配置:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"runtimeExecutable": "npm",
"cwd": "${workspaceRoot}",
"runtimeArgs": [
"run", "dev"
],
"port": 5858,
"stopOnEntry": true
}
]
}
当我运行脚本时,它会执行,但是vscode无法连接,出现以下错误:
无法通过'legacy'协议连接到运行时;考虑使用'inspector'协议(10000毫秒超时)。
我尝试添加了一个检查器协议:
{
"type": "node",
"request": "attach",
"name": "Attach (Inspector Protocol)",
"port": 9229,
"protocol": "inspector"
}
通过以下方式运行npm脚本:
npm run dev --inspect
这次我遇到了错误:
确保使用 --inspect 启动了 Node。无法连接到运行时进程,在 10000 毫秒后超时 - (原因:无法连接到目标:connect ECONNREFUSED 127.0.0.1:9229)。
我不确定自己漏掉了哪个部分。
根据重复的标签进行编辑
我看到了另一个关于通过 vscode 调试 npm 脚本的问题,但是其他问题和答案的细节没有这个问题所选择的答案给出的详细和具体。如果有人搜索我遇到的特定的 vscode 错误消息或我拥有的配置类型,他们就不一定会得到这个问题选定答案所提供的详细答案。