Node.js VS代码调试端口不匹配 细节

Node.js VS代码调试端口不匹配 细节,node.js,windows,debugging,visual-studio-code,Node.js,Windows,Debugging,Visual Studio Code,在Win10中。VS代码,帮助,关于 [窗口标题] Visual Studio代码 [内容] 版本1.14.2 提交cb82febafda0c8c199b9201ad274e25d9a76874e 日期2017-07-19T23:34:09.706Z 外壳1.6.6 渲染器56.0.2924.87 节点7.4.0 生成了launch.json,使用我的运行时…设置进行了调整 { // Use IntelliSense to learn about possible Node.js de

在Win10中。VS代码,帮助,关于

[窗口标题]
Visual Studio代码

[内容]
版本1.14.2
提交cb82febafda0c8c199b9201ad274e25d9a76874e
日期2017-07-19T23:34:09.706Z
外壳1.6.6
渲染器56.0.2924.87
节点7.4.0

生成了
launch.json
,使用我的
运行时…
设置进行了调整

{
    // Use IntelliSense to learn about possible Node.js debug attributes.
    // Hover to view descriptions of existing attributes.
    // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "cwd": "${workspaceRoot}",
            "runtimeExecutable": "npm.cmd",
            "runtimeArgs": [
                "run", "functional-test"
            ],
            "skipFiles": [
                "<node_internals>/**/*.js"
            ]
        }
    ]
}
第一次尝试 然后我启动一个调试会话(F5),它在调试控制台中生成

正在使用inspector协议进行调试,因为已设置运行时可执行文件。
npm.cmd--inspect=32825--debug brk run functional test

注意mypackage.json或launch.json中没有指定的其他标志。

除了上面的消息外,IDE中还显示了一个弹出窗口,其中引用了连接超时错误

无法连接到运行时进程,10000毫秒后超时-(原因: 无法连接到目标:connect-EconRefused

第二次尝试 如果我按如下方式更改npm脚本(包括
--inspect
标志)

调试控制台状态为

正在使用inspector协议进行调试,因为已设置运行时可执行文件。
npm.cmd--inspect=17976--调试brk运行功能测试
调试器正在端口9229上侦听。
警告:这是一项实验性功能,随时可能更改。

请注意不同的端口设置。至少调试器正在启动,并为我提供了一个要尝试的端口和目标端口

从何处获取这些值?如何使它们匹配(无需手动编辑launch.json和npm脚本为两者分配相同的端口)?

它从未成功加载,而是在顶部显示弹出消息(如上所述)

第三次尝试 如果我编辑npm脚本以添加端口

"functional-test": "node --inspect=9229 test/functional/run-foo-tests",
并编辑launch.json的
端口
设置以匹配

"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Launch Program",
        "cwd": "${workspaceRoot}",
        "runtimeExecutable": "npm.cmd",
        "runtimeArgs": [
            "run", "functional-test"
        ],
        "port": 9229,
        "skipFiles": [
            "<node_internals>/**/*.js"
        ]
    }
]
第五次尝试 当然,当我写这篇文章的时候,我终于发现了类似于

调整脚本以匹配产量(在调试控制台中)

使用inspector协议进行调试,因为运行时可执行文件 设置.npm.cmd运行功能测试
(节点:12420) 弃用警告:节点--调试已弃用。请使用节点 --改为检查。
调试器侦听127.0.0.1:5858

我还显示了一个不同的弹出窗口在顶部

无法连接到运行时进程,10000毫秒后超时-(原因: 无法连接到目标:解析错误)

第六次尝试 如果我更改脚本以匹配调试控制台中的信息

"functional-test": "node --nolazy --inspect test/functional/run-foo-tests",
调试控制台说

正在使用inspector协议进行调试,因为已设置运行时可执行文件。
npm.cmd运行功能测试
调试器正在端口9229上侦听。
警告:这是一项实验性功能,随时可能更改。

弹出窗口是

无法连接到运行时进程,10000毫秒后超时-(原因: 无法连接到目标:connect ECONREFUSSED 127.0.0.1

"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Launch Program",
        "cwd": "${workspaceRoot}",
        "runtimeExecutable": "npm.cmd",
        "runtimeArgs": [
            "run", "functional-test"
        ],
        "port": 9229,
        "skipFiles": [
            "<node_internals>/**/*.js"
        ]
    }
]
"runtimeArgs": [
    "run", "functional-test", "--inspect=5858"
],
"port": 5858,
"scripts": {
    "debug": "node --nolazy --debug-brk=5858 myProgram.js"
},
"functional-test": "node --nolazy --inspect test/functional/run-foo-tests",