2

我正在尝试在 WSL-2 中运行的 Ubuntu 20.04 LTS 上使用 VSCode 调试 Deno。我按照 Deno手册中的描述设置了我的 launch.json :

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "Deno",
            "type": "node",
            "request": "launch",
            "cwd": "${workspaceFolder}",
            "runtimeExecutable": "deno",
            "runtimeArgs": ["run", "--inspect-brk", "-A", "${fileBasename}"],
            "outputCapture": "std",
            "port": 9229
        }
    ]
}

但是,当我启动 Deno 时,“--inspect-brk”选项正在从用于启动 Deno 的命令中删除。如果我修改我的 launch.json 以将选项更改为“inspect-brk”(删除前导 --),该选项将显示在命令行上,并且我收到错误:

Cannot resolve module "file:///mnt/c/Users/mlwp/projects/deno/inspect-brk"

同样,如果我将选项的名称更改为“--inspect-brk-fun”,那么我会收到以下消息:

Found argument '--inspect-brk-fun' which wasn't expected, or isn't valid in this context

任何人都知道为什么 VSCode 会剥离该选项或如何调试它

4

1 回答 1

2

问题的原因是与以前版本的 VSCode JavaScript 调试器不兼容。--inspect-brk它已经在一段时间前得到修复,Deno 文档也对这个问题进行了修复,其中的值type已更改并port已替换为attachSimplePortin launch.json

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Deno",
      "type": "pwa-node",
      "request": "launch",
      "cwd": "${workspaceFolder}",
      "runtimeExecutable": "deno",
      "runtimeArgs": ["run", "--inspect-brk", "-A", "${file}"],
      "attachSimplePort": 9229
    }
  ]
}

但是,我发现使用您当前的配置也应该适用于 VSCode 的较新版本(1.47+)(在 WSL 2 中的 Ubuntu 20.04 上运行)。

于 2021-05-13T08:47:07.883 回答