npm运行项目中断,报javascript内存溢出,errno

2023-04-11  本文已影响0人  SarahLee1122

由于项目自身太庞大,换电脑换环境之后,开始报这种错误,网上搜索了各种解决方案,现总结如下:
1.错误截图

微信图片_20230412171007.png

2.产生原因:
nodejs在执行JavaScript时,内存受到v8限制,64位约为1.4g,32位0.7g
限制内存原因:垃圾回收时,js线程会暂停执行(避免JS应用逻辑与垃圾回收器看到的不一样),大量的堆内存回收严重影响性能
3.解决方案:
1)通过解决increase-memory-limit的包升级版来解决,安装两个npm包:increase-memory-limit-fixbug 和 cross-env

npm install cross-env increase-memory-limit

npm run fix-memory-limit

2)检查package.json是否有配置fix-memory-limit

"scripts": {
    "dev": "vue-cli-service serve"
    "fix-memory-limit": "cross-env LIMIT=4096 increase-memory-limit"
}

3)运行npm run dev
可能会报错 “node –max-old-space-size=4096不是内部或外部命令``”
接下来在项目的node_modules/.bin下面找到所有的*.cmd文件,
在ENDLOCAL语句的上边一行,修改"%_prog%" 改为 %_prog%, 去掉双引号。


微信图片_20230412172858.png

本人手动修改的,如上图,从下到上修改到vm2.cmd就好了
还不行的,推荐看一下这篇文章,作者写了脚本修改https://blog.csdn.net/qq_41614928/article/details/115835337

上一篇 下一篇

猜你喜欢

热点阅读