作者: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.cmdngc.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相关推荐

  1. 解决 vue 项目运行过程报错 JavaScript heap out of memory(内存溢出) “‘node --max-old-space-size=10240“‘ 不是内部或外部命令

    你是不是也遇到过 vue 项目 当你 ctrl+s,编译代码,项目就挂掉的情况?那么恭喜你,内存溢出了.兄dei,你膨胀了哟~ 不过不要慌,以下有完整的解决方案!         1.我们全局安装 i ...

  2. webpack打包---报错内存溢出javaScript heap out of memory

    今天, npm run build打包时,又报内存溢出了.所以记录一下,之前查了博客有一些解释. "报错CALL_AND_RETRY_LAST Allocation failed - Jav ...

  3. 【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 ...

  4. GitHub Actions 部署 VuePress 文档

    GitHub Actions 是 GitHub 的持续集成服务,于2018年10月推出.这些天,我一直在试用,觉得它非常强大,有创意,比 Travis CI 玩法更多. 本文是一个简单教程,演示如何使 ...

  5. 【解决】camunda部署流程报错should point to a running platform rest api

    问题 camunda部署流程报错如下: 当把url改为 http://localhost:8080/rest 时还是会报错如上. 解决方法 pom.xml文件中要包含如下依赖: <!-- web ...

  6. “pip install git+https://github.com/XXX/XXX”报错

    "pip install git+https://github.com/XXX/XXX"报错

  7. 使用 github pages, 部署静态网页

    使用 github pages, 部署静态网页 效果预览我自己的个人博客点击 需要源码的话github仓库点击 github保存到自己仓库 在github创建一个仓库 为仓库命名 将本地文件上传到gi ...

  8. Core系统部署IIS报错

    Core系统部署IIS报错 Failed to load resource: the server responded with a status of 500 (Internal Server Er ...

  9. ng build --prod --aot打包Angluar4项目报javaScript heap out of memory,内存溢出

    这里 Allocation failed - JavaScript heap out of memory JavaScript堆内存不足,我们都知道 Node 是基于V8引擎,在一般的后端开发语言中, ...

最新文章

  1. [LeetCode 题解]: Rotate List
  2. hibernate validate验证框架中@NotEmpty、@NotbBank、@NotNull的区别
  3. 自定义是否允许文件继续执行下去
  4. javascript 复制功能 兼容所有浏览器的解决方案
  5. 由浅到浅入门批量渲染(二)
  6. 23 Refs的应用场景与选用思考
  7. 讲述下 :LVM逻辑卷管理遇到的问题
  8. SSH服务器能够允许root用户远程登录
  9. 简明 Python 教程   第15章 更多Python的内容   上一页 在函数中接收元组和列表 注解...
  10. 公众号开发入门:查询用户是否已经关注公众号?
  11. ora-20011 ora-01555
  12. 计算机网络简历技能填写,计算机网络专业个人简历个人技能范文
  13. Ensembl突变数据描述之(一)——突变物种数据库及预测工具
  14. 国泰君安国际助力智加科技加速全球商业化布局
  15. 2021年危险化学品生产单位安全生产管理人员考试题及危险化学品生产单位安全生产管理人员最新解析
  16. 数据中台是什么,不是什么,就这么拨乱反正吧 by 傅一平
  17. 华为开发者联盟上架APP
  18. PS中转手绘教程汇总
  19. Word复选框字体丢失解决
  20. 简报 | 韩国釜山发行地区性数字货币,力促自由贸易区发展

热门文章

  1. Java P2298 Mzc和男家丁的游戏
  2. 汇编语言笔记(王爽)
  3. 答:本科生写论文对考研有用吗?
  4. 书单来了!大厂的技术牛人在读什么:阿里篇
  5. woa13数据的Matlab处理,基于WOA13数据的赤道大西洋海区温度锋的时空分布特征-海洋预报.PDF...
  6. 人脸扫描建模_人脸识别中的特征建模方法与流程
  7. JSON解析错误:无法构建内部类的实例
  8. Python编程从入门到实践:动手试一试8-3T恤
  9. Anaconda命令整理
  10. EOJ 3265 七巧板