jenkins打包内存溢出
现象
JavaScript heap out of memory
问题分析
报错信息翻译过来就是 JavaScript堆内存不足
。
这里说的 JavaScript 指的是 Node。
我们知道 Node 基于V8引擎,在一般的后端开发语言中,内存使没有啥限制。
但 Node 通过 JavaScript 使用内存时 据说只能使用部分内存
64位系统 | 32位系统 |
---|---|
1.4 GB | 0.7 GB |
若前端项目过大,webpack 编译时就会占用很多的系统资源,
当超出了V8对 Node 默认的内存限制大小,就会出现内存泄露。
解决办法
jekins构建>执行shell里这么写
NODE_OPTIONS=--max-old-space-size=4096
yarn
yarn build
或者 在package.json里的打包脚本里这么写
"scripts": {
"build": "cross-env NODE_OPTIONS=--max-old-space-size=4096 && vite build"
// 记得全局安装cross-env(它是用来设置node配置的 兼容windows和linux)
}
绝招
我做了如上操作依然不行,还是提示这个错误。
加内存条,一下子就好了!!!