Angular 14执行ng serve --o报错spawn UNKNOWN如何解决?
Angular 14
ng serve --o 报错 spawn UNKNOWN 解决办法 问题背景
项目环境:
- node: v16.15.1
- npm: 8.12.1
执行ng serve --o时触发错误:
An unhandled exception occurred: spawn UNKNOWN
See "C:\Users\JACOB~1.AKW\AppData\Local\Temp\ng-1F4Fst\angular-errors.log" for further details.
错误日志核心栈:
[error] Error: spawn UNKNOWN at ChildProcess.spawn (node:internal/child_process:413:11) at Object.spawn (node:child_process:700:9) at baseOpen (C:\App\GNS\node_modules\open\index.js:205:34) at async MergeMapSubscriber.project (C:\App\GNS\node_modules\@angular-devkit\build-angular\src\builders\dev-server\index.js:220:21)
解决步骤
临时规避:跳过自动打开浏览器
直接执行ng serve,待项目编译完成后手动打开浏览器访问http://localhost:4200,绕开自动打开浏览器的逻辑。检查默认浏览器配置
Windows系统中,确保默认浏览器已正确设置(无损坏、路径无特殊字符)。可以通过「设置→应用→默认应用」重新指定Chrome/Edge等主流浏览器为默认,之后再尝试ng serve --o。更新
open依赖包
错误源于open包的子进程创建失败,进入项目根目录执行:npm uninstall open npm install open@latest清理缓存并重装依赖
清除npm缓存和现有依赖后重新安装:- Windows系统:
npm cache clean --force rd /s /q node_modules del package-lock.json npm install - macOS/Linux系统:
npm cache clean --force rm -rf node_modules package-lock.json npm install
- Windows系统:
检查权限与目录问题
确保Node.js进程有足够权限创建子进程,避免用管理员身份运行命令;同时检查项目目录是否存在权限限制(如只读)。
内容的提问来源于stack exchange,提问作者Bami
相关产品推荐
相关产品推荐

