节点(+ babel)在docker容器中运行时,无法在Visual Studio Code中使用断点

时间:2018-07-25 12:44:38

标签: node.js visual-studio-code babeljs remote-debugging vscode-debugger

我无法在VSCode中使用断点,断点保持为“灰色”,并显示消息:“未验证的断点”。

查看此捕获: enter image description here

调试器似乎已“连接”,因为我从程序中接收日志,并且条形为“橙色”。使用断点是不可能的。

关于我的配置,这是我用来配置调试器的内容:

{
  "type": "node",
  "request": "attach",
  "name": "Test",
  "protocol": "inspector",
  "address": "localhost",
  "port": 9230,
  "restart": true,
  "sourceMaps": true,
  "localRoot": "${workspaceRoot}/",
  "remoteRoot": "/usr/src/app/",
  "outFiles" : [ "${workspaceRoot}/build/**/*.js" ],
  "smartStep": true
}

如您所见,我使用babel从“ $ {workspaceRoot} / src”->“ $ {workspaceRoot} / build”编译代码。 我使用命令“ node inspect = 0.0.0.0:9230 build / server.js”在Docker容器中执行代码 我在构建文件夹中也有一些sourcemap。

我认为问题出在我的本地源和执行的远程构建文件夹之间的映射上。 有一次我使断点正常工作,但奇怪的是=>断点处于活动状态(红色),但是在执行过程中我得到了变量,并且一步一步地好像那条线不是被执行的…… 在此测试期间,我会像这样更改配置:

{
  "type": "node",
  "request": "attach",
  "name": "Test",
  "protocol": "inspector",
  "address": "localhost",
  "port": 9230,
  "restart": true,
  "sourceMaps": true,
  "localRoot": "${workspaceRoot}/src",
  "remoteRoot": "/usr/src/app/build",
  "outFiles" : [ "${workspaceRoot}/build/**/*.js" ],
  "smartStep": true
}

所以现在我被困住了,如果您有解决问题的办法?

0 个答案:

没有答案