我正在尝试在VS Code上调试Node.JS应用程序但是,当终端打开时,我收到此消息:
错误:听EADDRINUSE ::: 5858
我的应用程序使用名为StrawJS(https://github.com/simonswain/straw)的框架,它同时启动一些不同的进程。我认为这是错误的原因,因为有许多不同的进程试图使用相同的调试器。
我发现了一个类似的问题(VSCode will not stop on breakpoints when first node prcess forks a second),但配置attach.js文件上的端口不起作用,问题仍然存在。
这是我的实际launch.json文件:
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "node",
"request": "launch",
"port": 5858,
"program": "${workspaceRoot}/run.js",
"stopOnEntry": false,
"args": [],
"cwd": "${workspaceRoot}",
"preLaunchTask": null,
"runtimeExecutable": null,
"runtimeArgs": [
"--nolazy"
],
"env": {
"NODE_ENV": "development"
},
"externalConsole": true,
"sourceMaps": false,
"outDir": null
}
]}
谢谢!
答案 0 :(得分:1)
我有同样的问题。如果从CMD启动节点--debug,则必须在VS代码中仅附加到进程(如果您尝试在同一端口上从VS代码再次启动它,则会导致错误 - 这是我的错误。)< / p>
使用以下内容在launch.json中定义attach配置对象:
{
"type": "node",
"request": "attach",
"name": "Attach to Process",
"port": 5858
}
在左上角的下拉列表中选择附加到处理,然后按绿色播放按钮 - 开始调试。