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

Angular CLI 1.2.6执行ng build -prod卡在14%求助

兄弟,我太懂这种卡在构建进度条不动的崩溃感了!你说的这个情况——新项目用相同依赖能正常构建,一导入自己的文件就卡在14%,大概率是你自己的代码里藏了构建工具搞不定的坑,我给你几个排查方向,亲测有效:

实用排查方案
  • 优先排查循环依赖:这是生产构建卡进度的重灾区!比如你写的A模块导入了B模块,结果B模块又绕回来导入了A模块,开发模式下Angular可能睁一只眼闭一只眼,但生产构建的优化阶段直接就卡壳了。你可以试试用madge --circular src/工具自动检测(如果不想装工具,就手动梳理你导入的文件引用链)。
  • 检查导入路径的大小写问题:Windows系统不区分文件名大小写,但生产构建(尤其是用Linux环境编译的话)会严格校验。比如你写import { UserService } from './services/UserService',但实际文件是userservice.ts,开发时没问题,构建到这里就会卡住。
  • 逐个排除可疑文件:既然一导入自己的文件就出问题,那你可以试着逐个注释掉你新增的文件导入,每次注释后跑一次ng build --prod,看注释到哪个文件时构建恢复正常,瞬间就能定位到问题源。
  • 清理构建缓存和依赖:有时候缓存会搞出莫名其妙的问题,执行这几条命令试试:
    npm cache clean --force
    rm -rf node_modules dist
    npm install
    
  • 临时关闭AOT编译排查:执行ng build --prod --aot=false,如果这次能正常构建,说明问题出在AOT编译阶段的代码上——比如组件模板里的语法错误、元数据定义错误,或者某个第三方库不兼容AOT模式。
  • 对比新项目和当前项目的依赖锁文件:虽然你说package.json相同,但package-lock.json(或yarn.lock)里可能存在依赖版本差异,比如某个间接依赖的版本不一样导致冲突,对比一下就能发现问题。

如果以上方法都试过还是不行,你可以把卡住时的进程日志(哪怕只有那一行)结合你导入的核心文件代码贴出来,应该能更快定位到问题!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 11:14:15