Javascript 正在等待调试器断开连接…-VSCode中的Node.js
我试图在VisualStudio代码中逐步完成一个简单的javascript示例,但调试器挂起试图断开连接 macOS Sierra版本10.12.6 VSCode版本1.18.1(最新) Node.js v8.9.2(最新版本)随自制软件一起安装Javascript 正在等待调试器断开连接…-VSCode中的Node.js,javascript,node.js,debugging,visual-studio-code,Javascript,Node.js,Debugging,Visual Studio Code,我试图在VisualStudio代码中逐步完成一个简单的javascript示例,但调试器挂起试图断开连接 macOS Sierra版本10.12.6 VSCode版本1.18.1(最新) Node.js v8.9.2(最新版本)随自制软件一起安装 Debugging with inspector protocol because Node.js v8.9.2 was detected. node --inspect-brk= /*(port)*/ jsSandbox.js Debugger
Debugging with inspector protocol because Node.js v8.9.2 was detected.
node --inspect-brk= /*(port)*/ jsSandbox.js
Debugger listening on ws:// (ip address)
Debugger attached.
Waiting for the debugger to disconnect...
这两个问题似乎都已经解决了,这就是为什么我如此困惑的原因。我做错什么了吗
以下是我尝试调试的唯一javascript文件:
// learning about closure
function increase() { // — gets called once
var getBig = 0;
return function() { // — — gets called each time
getBig += 1; // — — increments each time
console.log(getBig);
};
}
var bigOne = increase(); // -- a reference to the instance of the function
bigOne(); //1
bigOne();//2
…以及项目的launch.json配置:
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/jsSandbox.js",
"console": "internalConsole"
}
您应该确保显示问题的选项卡为空,即您应该解决所有问题。如果问题来自
node_modules
中的文件,只需关闭这些窗口,问题就会消失
例如,在下图中,Problems
选项卡中有4个问题。修复它们将使调试器正常工作
对我来说,依赖项在调试时崩溃了,这似乎也会使vscode调试器本身崩溃。重新启动VSCode将允许我再次调试。删除错误的依赖项(即修复代码,如另一个答案中所建议的),允许调试过程关闭,尽管调试控制台消息仍然令人困惑:
Debugger listening on ws://127.0.0.1:48673/54esaf46-659e-sd92-5e45-01e78845825e
Debugger attached.
Waiting for the debugger to disconnect...
调试器似乎无法断开连接。但是我在启动新的调试会话之后没有问题。检查launch.json文件。它存在于项目的文件夹.vscode中。在launch.json中,将程序值更改为${workspaceFolder}/对我有帮助的是:
我认为这会重置调试器,因为它会出现“无法断开连接”的小故障。单击下面所示的按钮打开launch.json- 在这里输入正确的文件名,即服务器的启动位置。就我而言,它是app.js
"version": "0.2.0",
"configurations": [
{
"type": "node",
"runtimeVersion": "10.21.0",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/app.js"
}
]
runtimeVersion是可选的,如果您想在特定的节点版本上运行它,它是必需的。并且该节点版本应该安装在您的系统上。我在代码中发现了语法错误。问题是我没有捕捉到异常。 使用VS代码,我只勾选了“未捕获的异常”并找到了错误代码。我发现安装了多个“节点调试”扩展。“React Native Tools”依赖于这两种工具。在我删除“React Native Tools”和“Node Debug”扩展之后,VS代码恢复了运行调试器的正常和预期行为。我使用了默认的启动配置:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/bin/www"
}
]
}
当你破译代码时就会发生这种情况。 启动您的项目,您将看到您的应用程序正在崩溃。 修复该问题,您将能够再次调试。使用$'{file} 对于活动窗口:
{
"version": "0.2.0",
"configurations": [{
"type": "node",
"request": "launch",
"name": "Active window",
"program": "${file}"
}]
}
您可以检查.json
{
“类型”:“节点”,
“请求”:“启动”,
“名称”:启动程序",
“程序”:“${workspaceFolder}/main.js”
}请先检查您的代码,它编译您的代码时应该会出现一些问题。当我在dragrator.conf.js规范[]中添加错误的文件路径时,发生了这种情况。我忘记添加文件扩展名。如果打开了多个VS代码选项卡,则可能会出现此问题。请关闭所有选项卡,然后再次打开VS代码,希望它能正常工作。是否使用npm、bower安装了不同的节点版本?是否在尝试后使用mac/window/ubuntoupdated node和OS版本强制断开与
process.exit()
在代码末尾。添加了process.exit()
到最后,但它仍然输出相同的控制台消息。在我的情况下,代码在语法上无效。在修复语法错误后,代码工作正常。最近一直在使用dotnet core,我没有再次访问此问题。很可能是像您所说的节点模块,或者id10-t错误。如果上述解决方案不起作用,请y删除.vscode文件夹下的launch.json并重试开始调试。这有助于我解决此问题。啊,问题选项卡中的任何问题似乎都是原因之一。即使是未使用的变量之类的小警告也会对我造成此问题。删除未使用的变量解决了此问题。谢谢,这非常有帮助。帮助我发现我提供了一个p解释不正确的ath。通过添加${workspaceRoot}
修复了它。这是一个很好的技巧。这向我显示了路径错误。您在哪里勾选了“未捕获异常”?欢迎使用stackoverflow,您可以将此作为问题本身的注释而不是回答。