执行yarn build的时候报错:FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
这是因为堆溢出了,我们需要把堆内存设置大一点。
解决办法:
// 在终端运行:
export NODE_OPTIONS="--max-old-space-size=8192"
// 或者在Windows下运行:
Set NODE_OPTIONS="--max-old-space-size=8192"
后边那个大小最好设置成1024的倍数,具体数字如下:
我在Windows下的cmd直接执行了Set NODE_OPTIONS=“–max-old-space-size=8192”,然后重新yarn build,发现不再报错啦!
注意,Set
指令只对当前控制台有效,如果把窗口关闭了,设置就会失效。如果想永久配置,请把Set改为Setx
,Setx则表示设置永久变量
使用 Set 和 Setx 的命令格式区别:一个有等号,一个没有等号,如果 Setx 后边加等号会进行格式报错
SetX设置完成后,对当前窗口无效,只有新打开一个窗口,才能生效
Set NODE_OPTIONS="--max-old-space-size=8192"
Setx -m NODE_OPTIONS "--max-old-space-size=8192"
-m表示对系统设置,没有-m表示仅对当前用户设置。
所以采用-m
的时候要以管理员身份执行指令,才能成功,要不然会报错没有权限!