本博客提供两种
node 内存溢出(FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory)的解决方案。
现象描述
项目开发中,当项目过大的时候,node
内存溢出而停止build
项目,即是项目构建过程中频繁报内存溢出:FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - process out of memory
。
解决方案一:通过 package.json
中的 "pro"
加大内存
/* package.json 文件 */
"scripts": {
"pro": "node --max_old_space_size=9000 build/build.js "
}
解决方案二:使用 increase-memory-limit
插件,增加node服务器内存限制
/* package.json 文件 */
"devDependencies": {
"increase-memory-limit": "^1.0.6",
},
"scripts": {
/* 添加 fix-memory-limit */
"fix-memory-limit": "cross-env LIMIT=4096 increase-memory-limit"
}
npm install --save-dev increase-memory-limit
,或者在更新package.json
后重新 npm install
全量更新依赖包npm run fix-memory-limit
(只需执行一次即可)或者:
全局安装increase-memory-limit
npm install -g increase-memory-limit
进入工程目录,执行:
increase-memory-limit