GitHub Pages部署vuepress报错:JavaScript heap out of memory
作者:duktig
博客:https://duktig.cn
优秀还努力。愿你付出甘之如饴,所得归于欢喜。
问题
GitHub Pages部署Vuepress一直都没有什么问题,具体部署方案参看:基于VuePress搭建博客系统及优化过程(持续更新…)
但是突然有一次部署就出现了如下的报错情况:
经过百度,发现原因是node使用的堆内存超出了V8引擎允许的最大值。
分析和解决过程
经过搜索常常得出了两种解决方案。
1、使用 increase-memory-limit 插件
TypeScript 和 webpack 时的常见问题,项目过大时,使用 increase-memory-limit,增加node服务器内存限制。
安装:
npm install -g increase-memory-limit
进入工程目录执行:
increase-memory-limit
在执行上述操作后,然后执行npm run build
后,会报错:
'"node --max-old-space-size=4096"' 不是内部或外部命令,也不是可运行的程序
在高版本中移除了node
命令,所以也不能解决。
2、修改cmd文件
在目录node_modules/.bin
下打开ng.cmd
和ngc.cmd
文件,添加 --max_old_space_size=4096
但是因为最终部署在GitHub Pages,没有办法直接修改 node_modules 的文件,所以这种方法不行。
解决方案
Node.js v8.0 开始,可以使用NODE_OPTIONS
环境变量来全局设置 max_old_space_size 来增加内存限制
export NODE_OPTIONS=--max_old_space_size=4096
increase-memory-limit 将附加 --max-old-space-size=4096
到文件中的所有 node
调用中node_modules/.bin/*
。
注意:如果在windows系统,可以使用命令:
set NODE_OPTIONS=--max_old_space_size=4096
因为export
是linux命令。
扩展
修改原来的github部署脚本:
name: Deploy GitHub Pages# 触发条件:在 push 到 master 分支后
on:push:branches:- main# 任务
jobs:build-and-deploy:# 服务器环境:最新版 Ubunturuns-on: ubuntu-lateststeps:# 拉取代码- name: Checkoutuses: actions/checkout@v2with:persist-credentials: false# 生成静态文件- name: Buildrun: npm install && export NODE_OPTIONS=--max_old_space_size=4096 &&npm run build# 部署到 GitHub Pages- name: Deployuses: JamesIves/github-pages-deploy-action@releases/v3with:ACCESS_TOKEN: ${{ secrets.ACCESS_TOKEN }}BRANCH: gh-pagesFOLDER: docs/.vuepress/dist
参看
- FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed – JavaScript heap out of memory
- How to use the NODE_OPTIONS environment variable to set the max_old_space_size globally in Windows?
GitHub Pages部署vuepress报错:JavaScript heap out of memory相关推荐
- 解决 vue 项目运行过程报错 JavaScript heap out of memory(内存溢出) “‘node --max-old-space-size=10240“‘ 不是内部或外部命令
你是不是也遇到过 vue 项目 当你 ctrl+s,编译代码,项目就挂掉的情况?那么恭喜你,内存溢出了.兄dei,你膨胀了哟~ 不过不要慌,以下有完整的解决方案! 1.我们全局安装 i ...
- webpack打包---报错内存溢出javaScript heap out of memory
今天, npm run build打包时,又报内存溢出了.所以记录一下,之前查了博客有一些解释. "报错CALL_AND_RETRY_LAST Allocation failed - Jav ...
- 【kibana】 kibana报错内存溢出 CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
一.前言: 今天收到kibana服务告警. 环境信息: es7,4 kibana 7.4 二.报错内容: <--- Last few GCs --->[2800:0x326ea90] 95 ...
- GitHub Actions 部署 VuePress 文档
GitHub Actions 是 GitHub 的持续集成服务,于2018年10月推出.这些天,我一直在试用,觉得它非常强大,有创意,比 Travis CI 玩法更多. 本文是一个简单教程,演示如何使 ...
- 【解决】camunda部署流程报错should point to a running platform rest api
问题 camunda部署流程报错如下: 当把url改为 http://localhost:8080/rest 时还是会报错如上. 解决方法 pom.xml文件中要包含如下依赖: <!-- web ...
- “pip install git+https://github.com/XXX/XXX”报错
"pip install git+https://github.com/XXX/XXX"报错
- 使用 github pages, 部署静态网页
使用 github pages, 部署静态网页 效果预览我自己的个人博客点击 需要源码的话github仓库点击 github保存到自己仓库 在github创建一个仓库 为仓库命名 将本地文件上传到gi ...
- Core系统部署IIS报错
Core系统部署IIS报错 Failed to load resource: the server responded with a status of 500 (Internal Server Er ...
- ng build --prod --aot打包Angluar4项目报javaScript heap out of memory,内存溢出
这里 Allocation failed - JavaScript heap out of memory JavaScript堆内存不足,我们都知道 Node 是基于V8引擎,在一般的后端开发语言中, ...
最新文章
- [LeetCode 题解]: Rotate List
- hibernate validate验证框架中@NotEmpty、@NotbBank、@NotNull的区别
- 自定义是否允许文件继续执行下去
- javascript 复制功能 兼容所有浏览器的解决方案
- 由浅到浅入门批量渲染(二)
- 23 Refs的应用场景与选用思考
- 讲述下 :LVM逻辑卷管理遇到的问题
- SSH服务器能够允许root用户远程登录
- 简明 Python 教程 第15章 更多Python的内容 上一页 在函数中接收元组和列表 注解...
- 公众号开发入门:查询用户是否已经关注公众号?
- ora-20011 ora-01555
- 计算机网络简历技能填写,计算机网络专业个人简历个人技能范文
- Ensembl突变数据描述之(一)——突变物种数据库及预测工具
- 国泰君安国际助力智加科技加速全球商业化布局
- 2021年危险化学品生产单位安全生产管理人员考试题及危险化学品生产单位安全生产管理人员最新解析
- 数据中台是什么,不是什么,就这么拨乱反正吧 by 傅一平
- 华为开发者联盟上架APP
- PS中转手绘教程汇总
- Word复选框字体丢失解决
- 简报 | 韩国釜山发行地区性数字货币,力促自由贸易区发展