【问题标题】:Using an old version of node in VS Code debugger在 VS Code 调试器中使用旧版本的节点
【发布时间】:2017-11-11 06:02:58
【问题描述】:

我将 VS Code 更新到 1.14.2,并尝试运行需要 Node 6.x 的应用程序。在此更新之前,我使用的配置运行良好:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceRoot}/keystone.js"
        },
        {
            "type": "node",
            "request": "attach",
            "name": "Attach to Port",
            "address": "localhost",
            "port": 5858
        }
    ]
}

现在,当我执行程序时,它只是挂起而没有启动(当我使用 Node 7.x 或更高版本运行时预计会出现这种情况)。此外,它还提供了以下消息,我不确定是否相关:

使用检查器协议进行调试,因为检测到 Node.js v8.2.1。

node --inspect=38743 --debug-brk keystone.js

调试器监听 ws://127.0.0.1:38743/d4a20480-3a0f-4aa7-8882-aec756edd6da 已附加调试器。

我正在使用 nvm 来管理我的 Node 版本,nvm list 提供了以下内容(如您所见,我已经将 6.11.0 别名为默认值):

$ nvm list
->      v6.11.0
         v8.0.0
         system
default -> 6.11.0 (-> v6.11.0)
node -> stable (-> v8.0.0) (default)
stable -> 8.0 (-> v8.0.0) (default)
iojs -> N/A (default)
lts/* -> lts/boron (-> N/A)
lts/argon -> v4.8.4 (-> N/A)
lts/boron -> v6.11.1 (-> N/A)

我假设由于尝试使用错误版本的 Node,它没有执行,任何帮助解决这个问题将不胜感激。

【问题讨论】:

    标签: node.js visual-studio-code keystonejs


    【解决方案1】:

    不确定是哪个版本的 VS Code 引入了这个选项(我使用的是 1.17.2 版本),但在 launch.json 中,我们可以明确指定要使用的调试协议。

    所以,要强制 VS Code 使用legacy 协议,添加"protocol": "legacy"

    您的launch.json 已更新为包含该密钥:

    {
        "version": "0.2.0",
        "configurations": [
            {
                "type": "node",
                "request": "launch",
                "name": "Launch Program",
                "program": "${workspaceRoot}/keystone.js"
            },
            {
                "type": "node",
                "request": "attach",
                "name": "Attach to Port",
                "address": "localhost",
                "port": 5858,
                "protocol": "legacy"
            }
        ]
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-04
      • 2021-03-10
      • 2017-04-04
      • 2021-04-15
      • 2018-10-16
      • 1970-01-01
      相关资源
      最近更新 更多