Javascript 正在等待调试器断开连接…-VSCode中的Node.js

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

我试图在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 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}/

对我有帮助的是:

  • 在程序中的任意位置创建了另一个新的调试器
  • 运行新的调试器
  • 从play/Stop/step菜单停止新的调试器

  • 我认为这会重置调试器,因为它会出现“无法断开连接”的小故障。

    单击下面所示的按钮打开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,您可以将此作为问题本身的注释而不是回答。