执行命令时出错:node --max_old_space_size = 3072 node_modules/@vue/cli-service/bin/vue-cli-service.js build

时间:2020-03-09 14:26:52

标签: node.js amazon-web-services vue.js vuejs2 aws-codebuild

我在AWS CodeBuild中有一些项目,我遇到的问题是,从昨天开始,我一直在构建中遇到此错误

[Container] 2020/03/09 12:51:00 Running command node --max_old_space_size=3072 node_modules/@vue/cli-service/bin/vue-cli-service.js build --mode production

-  Building for production...
Killed

[Container] 2020/03/09 12:53:29 Command did not exit successfully node --max_old_space_size=3072 node_modules/@vue/cli-service/bin/vue-cli-service.js build --mode production exit status 137
[Container] 2020/03/09 12:53:29 Phase complete: BUILD State: FAILED
[Container] 2020/03/09 12:53:29 Phase context status code: COMMAND_EXECUTION_ERROR Message: Error while executing command: node --max_old_space_size=3072 node_modules/@vue/cli-service/bin/vue-cli-service.js build --mode production. Reason: exit status 137

我知道该项目可能正在尝试使用超过3072Mb的ram,但我不知道为什么,我有另一个项目具有更多的页面和组件,并且没有引发该错误。

所以这里的问题

我怎么知道多少ram使用节点在本地构建vue项目? 我如何优化构建过程? 节点模块与此有关吗?该错误项目比其他项目有更多的软件包。

1 个答案:

答案 0 :(得分:0)

一些如下的网页表明这可能是内存问题。

错误消息中的node命令具有-max-old-space-size标志,该标志将内存限制设置为3gb,而不是默认值512 mb。

此3gb值应与构建项目的计算类型相匹配:

您可能正在使用具有3gb的'build.general1.small',但节点可能无法分配所有资源。

所以您可以尝试以较少的内存读取量来尝试该命令吗,例如

$ node --max_old_space_size=2560 node_modules/@vue/cli-service/bin/vue-cli-service.js build --mode production

或者您可以尝试升级计算类型,但这可能会导致价格上涨。