最近在打包react项目的时候出现了以下错误信息,
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
经过了解,原来是因为 JavaScript堆内存不足,Node 是基于V8引擎,在 Node 中通过 JavaScript 使用内存时只能使用部分内存(64位系统下约为1.4 GB),如果内存不足,可以用下面方法来放宽V8默认的内存限制。
方法一:配置package.json
在package.json文件中红框位置添加--max-old-space-size=8192,扩大使用内存上限。
方法二:通过 increase-memory-limit 插件
下载插件:npm i increase-memory-limit
执行命令:npx cross-env LIMIT=8192 increase-memory-limit
这样在打包时就会自动添加--max-old-space-size=8192参数。
如果还不行就继续调大命令后面的使用内存上限数值。