连接到节点调试器 (Next.js) 时出现“无法读取源映射”错误

问题描述 投票:0回答:2

我正在按照 Next.js 调试文档 设置本地调试环境。

“第 1 步:在调试模式下启动 Next.js”工作正常:

> cross-env NODE_OPTIONS='--inspect' next dev

Debugger listening on ws://127.0.0.1:9229/e4bb955d-e3b2-4849-b6e7-0248e6a3d53e
For help, see: https://nodejs.org/en/docs/inspector
Loaded env from C:\Users\markj\workspace\my-app\.env.local
ready - started server on http://localhost:3000
info  - Using external babel configuration from C:\Users\markj\workspace\my-app\babel.config.js
event - compiled successfully

但是在“第 2 步:连接到调试器”中,我在 VSCode 调试控制台中收到以下错误:

Could not read source map for file:///C:/Users/markj/workspace/my-app/node_modules/next/dist/compiled/path-to-regexp/index.js: ENOENT: no such file or directory, open 'c:\Users\markj\workspace\my-app\node_modules\next\dist\compiled\path-to-regexp\index.js.map'
Could not read source map for file:///C:/Users/markj/workspace/my-app/node_modules/@next/react-refresh-utils/ReactRefreshWebpackPlugin.js: ENOENT: no such file or directory, open 'c:\Users\markj\workspace\my-app\node_modules\@next\react-refresh-utils\ReactRefreshWebpackPlugin.js.map'
Could not read source map for file:///C:/Users/markj/workspace/my-app/node_modules/typescript/lib/typescript.js: ENOENT: no such file or directory, open 'c:\Users\markj\workspace\my-app\node_modules\typescript\lib\typescript.js.map'
Could not read source map for file:///C:/Users/markj/workspace/my-app/node_modules/@next/react-refresh-utils/loader.js: ENOENT: no such file or directory, open 'c:\Users\markj\workspace\my-app\node_modules\@next\react-refresh-utils\loader.js.map'
Could not read source map for file:///C:/Users/markj/workspace/my-app/node_modules/@next/react-refresh-utils/internal/ReactRefreshModule.runtime.js: ENOENT: no such file or directory, open 'c:\Users\markj\workspace\my-app\node_modules\@next\react-refresh-utils\internal\ReactRefreshModule.runtime.js.map'

毫不奇怪,当我尝试附加断点时出现这些错误,它显示“未绑定断点”。

环境:

  • Windows 10.0.19042
  • Node.js 12.20.0
  • Next.js 10.0.2
  • VSCode 1.51.1

非常感谢任何帮助或想法!

node.js debugging visual-studio-code next.js
2个回答
20
投票

这本质上是由 VSCode 调试文件引起的,它不应该尝试调试,即 node_modules。有一些关于此的 github 问题,herehere。我发现很有用。本质上,解决方法是阻止 VSCode 关心这些文件,您可以通过设置

"type":"pwa-node"
并添加:

来完成此操作
"resolveSourceMapLocations": [
    "${workspaceFolder}/",
    "!/node_modules/**"
],

致您

launch.json
下的
.vscode


0
投票

我不得不将 vscode 版本从 1.95 降级到 1.94。这解决了我的问题。这似乎也与 vscode 方面的错误有关。

© www.soinside.com 2019 - 2024. All rights reserved.