在构建 Angular 项目时出现以下错误:
CALL_AND_RETRY_LAST 分配失败 - JavaScript 堆内存不足
我在某处看到过配置 npm 的 max-old-space-size 可以解决这个问题。但是我不知道如何设置它。我使用的是 Windows 操作系统,在 nodejs 安装文件夹(C:\Program Files\nodejs)中有两个 npm 文件,npm 和 npm.cmd。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" "$@"