Webpack 内存不足

问题描述 投票:0回答:5

当我使用 webpack-dev 服务器时,有时会出现问题

FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

更多这里

配置webpack.config.js

"webpack": "^4.5.0",
"webpack-cli": "^2.0.14",
"webpack-dev-server": "^3.1.3",

NodeJS 版本:

node -v
v9.3.0

操作系统版本:

macOS High Sierra 10.13.6

有人遇到过类似的问题吗?

webpack webpack-dev-server
5个回答
13
投票
node --max-old-space-size=8192 node_modules/webpack-dev-server/bin/webpack-dev-server.js

运行上面的命令而不是运行

npm start


8
投票

增加节点进程的内存限制。使用命令行标志

node
启动
--max-old-space-size=2048
(到 2GB,我认为默认为 512 MB),或通过环境变量设置它
NODE_OPTS
https://nodejs.org/api/cli.html


5
投票

您可能会逃脱以下惩罚。该问题是由 postcss-loader 中的内存泄漏引起的。下面的一行对一些人有用。

rm -rf [package-lock.json] node_modules && npm cache clean -f && npm i

了解更多信息:https://github.com/webpack/webpack/issues/6929


4
投票

我尝试了上面建议的使用 webpack-dev-server 的解决方案,但它挂起(?)或者可能运行服务器。查看我的 webpack 脚本(版本 4.43.0),我改为这样做:

node --max-old-space-size=8192 node_modules/webpack/bin/webpack.js

这在本地和我的詹金斯文件中都有效。运行这个而不是“webpack”


0
投票

我从这里得到了另一种方法https://gitlab.com/gitlab-org/gitlab/-/merge_requests/114885/diffs?commit_id=edf538c8142c34a07d43d0b6f5dee0250879414c 它说它可以帮助解决编译过程中内存不足的错误。

我使用这样的命令:

"NODE_OPTIONS=\"--max-old-space-size=4094\" webpack --watch --env.type development --env.analysis 1"

您可以使用这样的命令:

"NODE_OPTIONS=\"--max-old-space-size=[memory-limit-in-megabytes]\" webpack [your-parameters]"
© www.soinside.com 2019 - 2024. All rights reserved.