You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode如何为Docker化Yarn Berry(pnp)进程附加调试器并忽略包错误

解决方案

两个核心修改即可解决Yarn PnP模式下依赖异常被捕获的问题:

  • 开启justMyCode配置:VS Code Node调试器内置的justMyCode开关会自动识别用户代码与第三方依赖代码,开启后会默认跳过所有依赖包的异常,无需手动匹配路径,完美兼容Yarn PnP模式
  • 补充skipFiles的路径匹配规则,覆盖PnP模式下的物理缓存路径与虚拟模块路径,适配容器内部署的路径结构

修改后的完整launch.json配置如下:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "Attach",
      "request": "attach",
      "type": "node",
      "restart": true,
      "sourceMaps": true,
      "internalConsoleOptions": "neverOpen",
      "remoteRoot": "/home/node/dist",
      "localRoot": "${workspaceFolder}/dist",
      // 新增justMyCode开关,自动跳过第三方代码
      "justMyCode": true,
      "skipFiles": [
        // 原有规则保留
        "${workspaceFolder}/.yarn/**",
        "<node_internals>/**/*.js",
        // 新增:匹配容器内的Yarn PnP缓存路径
        "/home/node/.yarn/**",
        // 新增:匹配PnP虚拟模块路径
        "**/$$virtual/**",
        // 新增:匹配PnP映射的逻辑node_modules路径
        "**/node_modules/**"
      ],
      "outFiles": ["${workspaceFolder}/dist/**/**.js"]
    }
  ]
}

如果还有个别依赖的异常被捕获,可以把对应依赖的路径追加到skipFiles列表即可,PnP模式下的依赖逻辑路径格式为**/.yarn/cache/包名*,直接添加即可匹配。

内容的提问来源于stack exchange,提问作者yaserso

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 14:36:03