Angular build编译内存溢出"JavaScript heap out of memory"的解决办法


关于最近使用angular build编译打包的时候,遇到内存溢出的突发情况,做一个简单记录

编译报错如下↓↓↓


 

报错信息很直观地指出是内存溢出了。是什么导致了内存溢出呢?其根本原因在于 nodejs 默认限制了最大可使用的内存大小。nodejs V8 引擎在 64 位机器上默认限制使用内存最大不超过 1.7GB

解决办法可以增加内存大小,修改package.json中的scripts脚本↓

node --max_old_space_size=5048 ./node_modules/@angular/cli/bin/ng build --prod
 1 "scripts": {  2         "ng": "ng",  3         "build-prod": "node --max_old_space_size=5048 ./node_modules/@angular/cli/bin/ng build --prod",  4         "start": "ng serve --host 0.0.0.0 --port 64862 -o ",  5         "build": "ng build --prod --build-optimizer",  6         "test": "ng test",  7         "lint": "npm run lint:ts && npm run lint:style",  8         "e2e": "ng e2e",  9         "analyze": "ng build --prod --build-optimizer --stats-json", 10         "test-coverage": "ng test --code-coverage --watch=false", 11         "lint:ts": "tslint -p src/tsconfig.app.json -c tslint.json 'src/**/*.ts'", 12         "lint:style": "stylelint \"{src}/**/*.less\" --syntax less", 13         "lint-staged": "lint-staged", 14         "tslint-check": "tslint-config-prettier-check ./tslint.json", 15         "hmr": "ng serve --host 0.0.0.0 --port 64862 --hmr"
16     }

 

然后重新运行npm run build-prod 编译成功!!!


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM