使用ng serve运行Angular项目报Module not found错误无法正常启动
问题根因排查与解决方案
核心问题原因
- 全局Angular CLI版本与项目依赖版本不兼容:本地全局安装的是Angular 12,但项目本身依赖Angular 8,跨大版本调用全局
ng命令启动项目时,会出现依赖路径解析、构建工具链适配错误,这是触发Module not found的最主要原因。 - 依赖版本不匹配:项目使用的PrimeNG 8官方适配的primeicons版本为2.x/3.x,当前安装的primeicons 4.1.0版本过高,也会引发资源找不到的报错。
- Node.js版本适配问题:Angular 8官方稳定支持的Node.js版本为10.x、12.x,使用的Node 14属于非官方适配版本,容易出现老旧依赖编译、解析异常。
修复步骤
- 优先使用项目本地的Angular CLI启动项目,不要调用全局
ng命令,直接执行:
npm start
或者调用npx指定本地cli启动:
npx ng serve
- 若执行后仍有报错,调整primeicons版本至适配PrimeNG 8的版本,执行以下命令重装对应依赖:
npm uninstall primeicons npm install primeicons@3.1.0 --save
之后删除项目根目录下的node_modules文件夹与package-lock.json文件,重新执行npm install安装依赖后再启动项目。
3. 如果问题依旧存在,可通过nvm工具将本地Node.js版本切换至12.x系列,重装依赖后再启动即可。
内容的提问来源于stack exchange,提问作者Madpop
相关产品推荐
相关产品推荐

