解决运行节点二进制文件时堆内存不足的方法(这是使用TypeScript 2.1+和webpack时的常见问题)是增加节点的最大内存。
increase-memory-limit是一个可以实现这一功能的包。在链接中,它说
自2017年8月发布的Node.js v8.0起,您现在可以使用NODE_OPTIONS环境变量全局设置max_old_space_size。export NODE_OPTIONS=--max_old_space_size=4096
但是我如何在Windows中设置这个环境变量呢?在powershell中,它给我错误“export:术语“export”无法识别为cmdlet、函数、脚本文件或可操作程序的名称。请检查名称的拼写,如果包含路径,请验证路径是否正确,然后重试。
6条答案
按热度按时间oipij1gg1#
export
是一个Linux命令。您可以将set
用于Windows:set NODE_OPTIONS=--max_old_space_size=4096
t5zmwmid2#
如果使用powershell运行,则设置NODE_OPTIONS的命令应如下所示:
然后您可以使用以下命令检查是否应用了它:
mzmfm0qo3#
根据nodeJ文档,属性应为(带连字符)
并且可以像其他人说的那样用在启动脚本或使用NODE_OPTIONS设置/导出中。不需要为此导入新的库。
$节点--最大旧空间大小= 800 index.js
Reference: https://nodejs.org/api/cli.html#cli_max_old_space_size_size_in_megabytes
fivyi3re4#
您可以在powershell中使用以下命令来增加节点内存:
在此之后,您的应用程序应该不会出现问题。
dgiusagp5#
首先,我想感谢作者(爱德华张)谁作出了评论2评论以上。我决定写这篇评论。
我在使用Angular 应用程序时遇到了这个错误。有一些解决方案可以解决这个问题,但大多数都不适合我。但最后我找到了一个解决方案。通过使用环境变量:
使用此命令检查node.js cmd上的环境变量。
如果用于解决此问题的环境变量不起作用,可以在vs代码中使用此命令。
您可以检查以下内容:
在此命令后,我得到了一些错误,如一些模块找不到与修复此错误,您可以运行此命令
如果堆分配错误继续,您可以像这样增加卷。
t9eec4r06#
要解决AWS示例上的此问题,
登录AWS控制台并从示例状态点击关闭示例
然后在“操作”点按下
选择变更示例类型
然后选择t2.medium,保存并退出
返回并启动示例
然后再次运行您的应用
这在t2.micro示例上很常见,因为它是1 GB RAM
谢啦,谢啦