我正在尝试构建并服务我的项目。它工作正常,我从 git 更新了它,然后当我提供它时,突然出现一个错误,提示“另一个进程,ID 29800,当前正在运行 ngcc。” 我重试了“npm i”,还重新启动了 IDE,甚至重新启动了电脑,但它仍然是一样的。
当 ngcc(Angular 兼容性编译器)尚未完成其功能时,就会发生这种情况,您必须在 Angular 项目中启用
ivy
。 阅读此处了解有关常春藤的更多信息。
npm install
,看看是否可以解决您的问题。ngcc
。node_modules/@angular/compiler-cli/ngcc/__ngcc_lock_file__
node_modules
目录并再次尝试 npm i
。我的笔记本电脑崩溃了,重新启动后出现此问题。从 ionic 项目中删除以下文件解决了问题:
node_modules/@angular/compiler-cli/ngcc/ngcc_lock_file
在各种 Angular 版本中,文件名可能有一些前导或尾随下划线。
用一个简单的命令解决这一切:
奔跑
npm ci
这将删除
node_modules
和 npm install
只需删除
node_modules
然后运行 npm i
当 ngcc(Angular 兼容性编译器)未完成其功能时会发生这种情况
在 Angular 15 中,锁定文件已更改。要释放锁定,请在项目文件夹中执行
rm node_modules/.ngcc_lock_file
我从
node_modules/@angular/compiler-cli/ngcc/ngcc_lock_file_
文件夹中删除了文件 node_modules
并且它工作正常。
只需运行
rm -rf node_modules && npm install
删除节点模块中以下位置的锁定文件将修复此错误
*
C:\Users\OneDrive\Desktop\app\node_modules\@angular\compiler-cli\ngcc\src\locking*
删除那里的锁定文件 JavaScript 文件。
如果仍然显示相同的错误,则删除整个lock-files文件夹,重新启动命令提示符,然后它将运行
此外,如果上述解决方案不起作用,可能是管道空间太小,无法与副进程一起使用。你可以做的是去angular.json 并搜索这个对象:
"budgets": [{"type": "initial","maximumWarning": "4mb","maximumError": "5mb"}]
并提高对 maximumError 的限制。
有关预算的更多信息:angular.io/guide
如果您在 Kubernetes 的容器中运行
npm
时遇到此问题,可能是作为 CI/CD 管道构建容器的一部分:
您可能会看到
Another process ... is currently running ngcc.
您还看到:
npm ERR! Failed at the ... custom-build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
您继续,将此消息放入谷歌中,但此处描述的修复不起作用。 ngcc 文件甚至不存在。
这可能会产生误导。如果您阅读我上面发布的两个输出块,您会发现:
Killed
file-attachments build failed.
npm ERR! code ELIFECYCLE
npm ERR! errno 137
npm ERR! ...`
npm ERR! Exit status 137
这才是真正的问题。 137 = 内存不足错误。调整您的构建容器 Pod 并为其提供更多内存。这样就可以解决问题了。
我在从 IDE (IntelliJ) 运行 Jest 测试时遇到了类似的问题。在尝试了各种解决方案之后,我在日志消息本身中找到了解决方案。
这是我的设置: -IDE:IntelliJ - 操作系统:macOS -节点:18.18.2 -npm:9.8.1
为了解决该问题,我从项目根目录运行以下命令:
rm -r ./node_modules/.ngcc_lock_file
运行此命令后,我重新启动了 IDE,问题就解决了。
我希望这可以帮助任何面临同样问题的人!
快跑吧
离子修复
然后选择是