node.js - npm - 如何在 npm 中设置 max-old-space-size

标签 node.js angular npm

构建 Angular 项目时出现以下错误,

CALL_AND_RETRY_LAST 分配失败 - JavaScript 堆内存不足

我在某处看到在 npm 中配置 max-old-space-size 可以解决这个问题。但是不知道怎么设置。我使用的是 Windows 操作系统,并且在 nodejs 安装文件夹 (C:\Program Files\nodejs)、npm 和 npm.cmd 中有两个 npm 文件。 npm.cmd 文件中的第一行是“由 npm 创建,请不要手动编辑”。所以我不应该编辑这个文件,我必须在 npm 文件中配置 max-old-space-size。但是我没有在这个文件中的任何地方配置它。我的 npm 文件如下所示,

#!/bin/sh
(set -o igncr) 2>/dev/null && set -o igncr; # cygwin encoding fix

basedir=`dirname "$0"`

case `uname` in
    *CYGWIN*) basedir=`cygpath -w "$basedir"`;;
esac

NODE_EXE="$basedir/node.exe"
if ! [ -x "$NODE_EXE" ]; then
  NODE_EXE=node
fi

NPM_CLI_JS="$basedir/node_modules/npm/bin/npm-cli.js"

case `uname` in
  *MINGW*)
    NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix -g`
    NPM_PREFIX_NPM_CLI_JS="$NPM_PREFIX/node_modules/npm/bin/npm-cli.js"
    if [ -f "$NPM_PREFIX_NPM_CLI_JS" ]; then
      NPM_CLI_JS="$NPM_PREFIX_NPM_CLI_JS"
    fi
    ;;
  *CYGWIN*)
    NPM_PREFIX=`"$NODE_EXE" "$NPM_CLI_JS" prefix -g`
    NPM_PREFIX_NPM_CLI_JS="$NPM_PREFIX/node_modules/npm/bin/npm-cli.js"
    if [ -f "$NPM_PREFIX_NPM_CLI_JS" ]; then
      NPM_CLI_JS="$NPM_PREFIX_NPM_CLI_JS"
    fi
    ;;
esac

"$NODE_EXE" "$NPM_CLI_JS" "$@"

最佳答案

或许你可以试试这个

> npm run start --node-flags --max-old-space-size=512 --no-warnings

> node --max-old-space-size=250 `which npm` some_npm_command

关于node.js - npm - 如何在 npm 中设置 max-old-space-size,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55021190/

相关文章:

postgresql - 将测试和开发应用程序版本部署到 Google Compute Platform 的最佳策略

javascript - Angular4 ngModel 将数据类型从 'number' 更改为 'string'

node.js - 我应该为多个文件创建多个 node_modules 文件夹还是使用一个文件夹?

windows - 将 node-webkit 应用程序打包为 ".appx"(适用于 Windows 8 商店)

javascript - Azure 应用服务中的 process.env.NODE_ENV 在哪里

node.js - 使用 Fluent-ffmpeg 将屏幕截图上传到谷歌云存储桶

node.js - 无法安装 Sequelize NPM node_modules/.sequelize.DELETE/node_modules/debug

javascript - Angular 2 - 如何使用本地 json 中的数据?

npm - Gulp jekyll 浏览器同步重建循环

node.js - Vuejs 和 npm - 所有依赖项都应该是 devDependencies 吗?