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

如何解决VSCode报错"ENOENT: no such file or directory"?

报错含义说明

ENOENT是「Error NO ENTry」的缩写,属于系统级错误码,含义是指定路径下不存在目标文件或目录。你遇到的完整报错翻译为:调试器无法读取webgazer.js对应的源码映射文件,在给定路径下找不到webgazer.js.map文件。
这个报错属于调试辅助类提示,不会影响你的代码正常运行,只是会降低调试阶段的便利性。

.map(源码映射)文件定义

.map文件是源码映射文件,作用是建立压缩/编译后的JS文件和原始未加工源码的对应关系。正常生产环境的JS代码都会被压缩混淆,调试的时候如果有对应的.map文件,就能直接定位到原始源码的行列位置,而不是面对压缩后的无意义代码。如果没有调试第三方库源码的需求,完全可以不用这类文件。

解决方法

按照操作成本从低到高排序,按需选择即可:

  • 方案1:直接忽略报错
    该提示不影响代码运行,不需要调试webgazer底层源码的情况下,不用做任何处理,不影响你编写自身业务逻辑。
  • 方案2:关闭VSCode调试器的source map读取功能
    如果你不想每次调试都看到该提示,可以修改调试配置:
    打开项目根目录下的.vscode/launch.json文件,在对应调试配置项中添加"sourceMaps": false,参考配置如下:
    {
      "version": "0.2.0",
      "configurations": [
        {
          "type": "chrome",
          "request": "launch",
          "name": "启动Chrome调试",
          "url": "http://localhost:5500",
          "webRoot": "${workspaceFolder}",
          "sourceMaps": false
        }
      ]
    }
    
    修改后重启调试即可消除该报错。
  • 方案3:生成并添加.map文件
    仅在你需要调试webgazer源码时才需要操作该方案,步骤如下:
    1. 优先查找jsPsych官方完整发布包,官方包一般会附带所有依赖对应的.map文件,直接将webgazer.js.map放到和webgazer.js同级的目录即可。
    2. 如果找不到官方的映射文件,可以自行通过构建工具生成:
    • 首先安装Node.js运行环境,之后全局安装压缩工具terser:npm install -g terser
    • 进入webgazer.js所在的文件夹,执行命令:terser webgazer.js --source-map "filename='webgazer.js.map'" -o webgazer.js
    • 生成的webgazer.js.map会自动保存在当前目录,重启调试即可正常读取映射文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 16:48:03