当前位置: 首页 > news >正文

vite 打包时:JavaScript heap out of memory(内存溢出)

出错原因分析:

执行命令 npm run build 时出现以下错误提示:

vite v3.2.7 building for production...                                                                        11:22:34
transforming (3) src\main.tsWARN  Browserslist: caniuse-lite is outdated. Please run:                                                    11:22:34npx update-browserslist-db@latestWhy you should do it regularly: https://github.com/browserslist/update-db#readmetransforming (4893) node_modules\stringify-entities\lib\constant\dangerous.js
<--- Last few GCs --->[18396:0000021B91231000]    98038 ms: Mark-Compact 2030.5 (2088.3) -> 2022.8 (2088.5) MB, pooled: 6 MB, 882.47 / 0.00 ms  (average mu = 0.127, current mu = 0.031) allocation failure; scavenge might not succeed
[18396:0000021B91231000]    98942 ms: Mark-Compact 2030.8 (2088.5) -> 2023.1 (2088.8) MB, pooled: 6 MB, 852.52 / 0.00 ms  (average mu = 0.093, current mu = 0.057) allocation failure; scavenge might not succeed<--- JS stacktrace --->FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
----- Native stack trace -----1: 00007FF6B48CBA4B node::SetCppgcReference+160112: 00007FF6B48353F8 SSL_get_quiet_shutdown+920083: 00007FF6B53C2D81 v8::Isolate::ReportExternalAllocationLimitReached+654: 00007FF6B53AFB86 v8::Function::Experimental_IsNopFunction+29185: 00007FF6B51FB830 v8::internal::StrongRootAllocatorBase::StrongRootAllocatorBase+315526: 00007FF6B51F54FD v8::internal::StrongRootAllocatorBase::StrongRootAllocatorBase+61577: 00007FF6B51F0D95 v8::internal::ThreadIsolation::JitPageReference::Size+1907898: 00007FF6B4B6A30D BIO_ssl_shutdown+1899: 7FF8000000000000

解决办法:

方法一、

node --max_old_space_size=102400 ./node_modules/vite/bin/vite.js build

方法二、

set NODE_OPTIONS=--max-old-space-size=4096
npm run build

方法三、

打开 package.json,在 scripts 部分修改 build 脚本:

{"scripts": {"build": "set NODE_OPTIONS=--max-old-space-size=4096 && vite build"}
}

方法四、

优化依赖和 Vite 配置
移除不必要的依赖:如果有不再使用的包或库,建议将其卸载,这样可以减少构建时的内存消耗。

npm uninstall <package-name>

分析并优化构建配置:使用 vite-plugin-analyzer 插件分析打包大小,并找出冗余或不必要的部分。

npm install vite-plugin-analyzer --save-dev

然后在 vite.config.js 中添加:

import { visualizer } from 'rollup-plugin-visualizer';export default {plugins: [visualizer({ open: true }),],
};
http://www.lryc.cn/news/512331.html

相关文章:

  • 【服务器学习专栏 1.2 -- 带外管理】
  • 微服务のGeteWay
  • html+css+js网页设计 美食 美食家6个页面
  • IntelliJ Idea常用快捷键详解
  • 服务器虚拟化:它是什么以及有什么好处?
  • Python爬虫完整代码拿走不谢
  • MLA:多头潜在注意力
  • 阿里云大模型ACP高级工程师认证模拟试题
  • 游戏引擎学习第67天
  • Nginx知识详解(理论+实战更易懂)
  • # 【鸿蒙开发】多线程之Worker的使用
  • TKG-DM – 基于Latent Diffusion模型的“原生”色度提取生成具有透明通道的图像
  • 告别 Windows 迟缓!多维度优化策略开启流畅新体验
  • 亚马逊国际站商品爬虫:Python实战指南
  • RabbitMQ基础篇之Java客户端快速入门
  • 深度学习:基于MindSpore NLP的数据并行训练
  • Qt6之QML——枚举
  • ModiLeo交易平台:引领数字货币交易新未来
  • [python SQLAlchemy数据库操作入门]-15.联合查询,跨表获取股票数据
  • 某网站手势验证码识别深入浅出(全流程)
  • 在虚幻引擎4(UE4)中使用蓝图的详细教程
  • Junit如何禁用指定测试类,及使用场景
  • ICLR2015 | FGSM | 解释并利用对抗样本
  • Python 迭代器与生成器
  • MySQL数据库——索引结构之B+树
  • 3_TCP/IP连接三次握手与断开四次挥手
  • 【LC】3159. 查询数组中元素的出现位置
  • 《机器学习》——KNN算法
  • GAMES101:现代计算机图形学入门-作业五
  • GPU 进阶笔记(二):华为昇腾 910B GPU