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

NestJS创建新项目失败:无法找到node:fs模块求助

问题描述

我是NestJS新手,创建新项目时反复报错。当前环境版本:

  • Node.js 14.15.3
  • NestJS CLI 9.2.0
  • npm 6.14.9

报错信息:

internal/modules/cjs/loader.js:883
  throw err;
  ^

Error: Cannot find module 'node:fs'
Require stack:
- C:\Users\Personal-Pc\AppData\Roaming\npm\node_modules\@nestjs\cli\node_modules\@angular-devkit\core\node\host.js
- C:\Users\Personal-Pc\AppData\Roaming\npm\node_modules\@nestjs\cli\node_modules\@angular-devkit\core\node\index.js
- C:\Users\Personal-Pc\AppData\Roaming\npm\node_modules\@nestjs\cli\node_modules\@angular-devkit\schematics-cli\bin\schematics.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)
    at Function.Module._load (internal/modules/cjs/loader.js:725:27)
    at Module.require (internal/modules/cjs/loader.js:952:19)
    at require (internal/modules/cjs/helpers.js:88:18)
    at Object.<anonymous> (C:\Users\Personal-Pc\AppData\Roaming\npm\node_modules\@nestjs\cli\node_modules\@angular-devkit\core\node\host.js:11:19)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Module.require (internal/modules/cjs/loader.js:952:19) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    'C:\\Users\\Personal-Pc\\AppData\\Roaming\\npm\\node_modules\\@nestjs\\cli\\node_modules\\@angular-devkit\\core\\node\\host.js',
    'C:\\Users\\Personal-Pc\\AppData\\Roaming\\npm\\node_modules\\@nestjs\\cli\\node_modules\\@angular-devkit\\core\\node\\index.js',
    'C:\\Users\\Personal-Pc\\AppData\\Roaming\\npm\\node_modules\\@nestjs\\cli\\node_modules\\@angular-devkit\\schematics-cli\\bin\\schematics.js'
  ]
}

Failed to execute command: node @nestjs/schematics:application --name=demo --directory=undefined 
--no-dry-run --no-skip-git --no-strict --package-manager="npm" --collection="@nestjs/schematics" --language="ts"

已尝试操作:

npm cache clean --force
npm uninstall -g @nestjs/cli
npm i -g @nestjs/cli
npm i -g @nestjs/schematics
nest new demo

也试过npx @nestjs/cli new demo,但依然报错。

解决方案

这个报错的核心原因是Node.js 14.15.3不支持node:前缀的模块导入语法,而NestJS CLI 9.x依赖的@angular-devkit库使用了该语法,导致无法找到node:fs模块。

有两种可行的解决方式:

方式一:升级Node.js版本

Node.js从v14.18.0开始正式支持node:前缀的核心模块导入。操作步骤:

  1. 下载并安装Node.js v14.18.0或更高版本(推荐LTS版本,比如v16.x或v18.x)
  2. 运行node -v验证版本已更新
  3. 重新执行nest new demo创建项目

方式二:降级NestJS CLI到兼容Node 14的版本

如果暂时无法升级Node.js,可以安装NestJS CLI 8.x版本(该版本依赖的@angular-devkit未使用node:前缀语法):

npm uninstall -g @nestjs/cli
npm install -g @nestjs/cli@8.x

安装完成后再执行nest new demo即可正常创建项目。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.29 19:20:41