Node.js应用安装后执行gulp命令报错ReferenceError: primordials未定义
问题本质
ReferenceError: primordials is not defined报错的核心原因是Node.js v12及更高版本与Gulp v3.x存在兼容性冲突,你使用的Node.js 14.17.5属于高版本,而目标仓库依赖固定了Gulp 3.x版本,因此触发了原生模块调用异常。
解决方案
提供两种可落地的解决路径,按需选择即可:
方案1:强制覆盖兼容依赖(无需更换Node.js版本,推荐)
无需修改本地Node环境,仅调整项目依赖规则即可解决:
- 先删除项目根目录下已生成的
node_modules文件夹和package-lock.json文件 - 打开项目根目录的
package.json文件,在最外层JSON结构中新增如下配置项:
"resolutions": { "graceful-fs": "^4.2.10" }
- 在cmd中进入项目根目录,依次执行以下命令:
- 安装依赖强制覆盖工具:
npm install -g npm-force-resolutions - 重新安装项目依赖:
npm install
- 安装依赖强制覆盖工具:
- 依赖安装完成后执行
gulp启动服务,即可正常在浏览器访问http://localhost:3000
方案2:降级Node.js版本
如果不想修改项目配置,可直接更换适配的Node版本:
- 卸载本地当前的Node.js 14.17.5版本
- 下载安装Node.js v10.24.1 LTS版本,该版本与Gulp v3.x完美适配
- 重新进入项目根目录执行
npm install,完成后执行gulp启动服务即可
内容的提问来源于stack exchange,提问作者asterisk82
相关产品推荐
相关产品推荐

