ng build --prod --aot打包Angluar4项目报javaScript heap out of memory,内存溢出
這里 Allocation failed - JavaScript heap out of memory JavaScript堆內存不足,我們都知道 Node 是基于V8引擎,在一般的后端開發語言中,在基本的內存使用上沒有什么限制,但是我去查閱了相關的資料才發現,在 Node 中通過 JavaScript 使用內存時只能使用部分內存(64位系統下約為1.4 GB,32位系統下約為0.7 GB),這就是我們編譯項目時為什么會出現內存泄露了,因為前端項目如果非常的龐大,webpack 編譯時就會占用很多的系統資源,如果超出了V8對 Node 默認的內存限制大小就會出現剛剛我截圖的那個錯誤了,那怎么解決呢?V8依然提供了選項讓我們使用更多的內存。Node 在啟動時可以傳遞 --max-old-space-size 或 --max-new-space-size 來調整內存大小的使用限制。
解決方法把 package.json 里面 scripts 字段的腳本命令的node命令隱藏起來,我們直接把上面v8提供的選項參數直接寫入scripts 字段的 node 命令后就好了,示例如下:
"scripts": { "build-prod": "node --max_old_space_size=5048 ./node_modules/@angular/cli/bin/ng build --prod", "build": "ng build" },我是在build-prod里面的node加上? --max_old_space_size=5048 ,然后重新打包ng build --prod --aot 或者npm run build-prod? 打包,完美解決問題,成功打包了
?
轉載于:https://www.cnblogs.com/qianyy/p/11171542.html
總結
以上是生活随笔為你收集整理的ng build --prod --aot打包Angluar4项目报javaScript heap out of memory,内存溢出的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Egret入门学习日记 --- 第二篇
- 下一篇: shell 和 || 的短路使用