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

运行gulp serve报primordials未定义且nvm切换Node版本失败如何解决

问题原因说明

1. gulp执行报错ReferenceError: primordials is not defined

该错误是版本不兼容导致:你运行的SPFx web part项目依赖3.x版本的gulp,而gulp 3.x仅支持Node.js 12及以下版本,你当前使用的Node 17版本过高,Node 12+版本已移除内部原生API primordials,因此触发该报错。

2. nvm切换版本报错exit status 145: The directory is not empty

该错误是Windows系统下nvm的常见异常,触发原因包括:

  • 当前有正在运行的Node.js相关进程占用了Node默认安装目录,导致nvm无法修改目录软链接
  • 你没有使用管理员权限运行终端,nvm没有权限修改系统目录
  • 之前直接安装的Node.js残留文件未清理,默认Node安装目录(C:\Program Files\nodejs)非空,nvm无法覆盖创建软链接
解决步骤

第一步:修复nvm版本切换问题

  • 打开任务管理器,结束所有运行中的node.exe、npm.exe相关进程,关闭所有打开的代码编辑器、终端窗口
  • 右键点击CMD/PowerShell,选择以管理员身份运行
  • 若仍报错,手动删除C:\Program Files\nodejs目录(可提前备份目录内的全局npm包配置)
  • 执行切换命令:nvm use 16.13.0,执行完成后运行node -v确认版本切换成功

第二步:修复gulp运行报错

  • 进入项目根目录,删除已有的node_modules文件夹和package-lock.json文件
  • 执行npm install重新安装所有项目依赖
  • 执行gulp serve即可正常启动本地调试服务

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:27:00