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

Windows运行Nuxt 3项目遇ERR_UNSUPPORTED_ESM_URL_SCHEME错误

Windows下运行Nuxt 3项目出现ERR_UNSUPPORTED_ESM_URL_SCHEME错误的解决方案

问题描述

在Windows 10环境运行Nuxt 3项目时触发路径协议不支持的错误,相同项目在Mac上可正常运行。

环境信息

  • Nuxt版本:3.0.0-rc.8
  • 操作系统:Windows 10.0.19045
  • Node版本:v18.16.1
  • 终端:Git Bash 2.41.0.windows.2

错误日志

Error [ERR_UNSUPPORTED_ESM_URL_SCHEME]: Only URLs with a scheme in: file and data are supported by the default ESM loader. On Windows, absolute paths must be valid file:// URLs. Received protocol 'c:'
    at new NodeError (node:internal/errors:399:5)
    at throwIfUnsupportedURLScheme (node:internal/modules/esm/resolve:1059:11)
    at defaultResolve (node:internal/modules/esm/resolve:1135:3)
    at nextResolve (node:internal/modules/esm/loader:163:28)
    at ESMLoader.resolve (node:internal/modules/esm/loader:838:30)
    at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)
    at ModuleWrap. (node:internal/modules/esm/module_job:77:40)
    at link (node:internal/modules/esm/module_job:76:36)

已尝试的修复措施

  • 执行yarn重新安装依赖
  • 将Node更新至v18.16.1(最新推荐版本)
  • 安装Vue CLI
  • 检查代码中是否直接使用c:路径标识(未发现)
  • 检查代码中是否使用normalize(path)处理路径(未发现)

解决方案

该错误核心是Windows平台下ESM加载器无法识别未带file://协议的本地绝对路径,以下是可行修复方向:

1. 排查Nuxt配置与第三方依赖路径处理

  • 检查nuxt.config.ts中的自定义路径配置(如alias、build模块参数),优先使用Nuxt内置的~/别名替代绝对路径,或用path.resolve()生成跨平台兼容路径
  • 删除node_modules和yarn.lock(或package-lock.json),重新执行yarn install,确保依赖安装的是适配Windows的版本,避免第三方依赖硬编码路径问题

2. 调整终端运行方式

Git Bash对Windows路径的解析存在差异,可尝试:

  • 改用Windows原生的命令提示符(CMD)或PowerShell启动项目
  • 若必须使用Git Bash,切换项目目录时采用cd /c/Users/xxx/your-project格式,避免c:\xxx这类原生Windows路径写法

3. 升级Nuxt至稳定版

当前使用的是Nuxt 3的RC测试版(3.0.0-rc.8),存在较多跨平台兼容性bug,升级到正式稳定版可解决大部分路径相关问题:

yarn add nuxt@latest

4. 确认ESM配置正确性

检查项目根目录的package.json,确保已设置"type": "module"(Nuxt 3默认会配置,但可手动确认),避免CommonJS与ESM混合导致的路径解析冲突

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 23:02:34