为 Android 构建 Ionic 时出现“CALL_AND_RETRY_LAST 分配失败”错误

Gre*_*eji 6 javascript angularjs cordova ionic-framework ionic3

我正在使用 Ionic 为 Android 构建,但我总是收到此错误:

离子误差

我有这个来自ionic info

离子信息

毫无疑问,我已经浏览了整个互联网寻找解决方案,但我没有成功。
我已经看到并阅读了以下内容:

我还观察到,与其他错误相比,我有这个独特的错误:

Security context: 000001F502E3FA99 <JS Object>     
    1: createLiteral [..]    
    2: typeToTypeNodeHelper(aka typeToTypeNodeHelper) [..]
Run Code Online (Sandbox Code Playgroud)

我已经被困在这个问题上超过 2 天了,我真的需要这方面的帮助和指导。

这是我的 package.json 内容:

Security context: 000001F502E3FA99 <JS Object>     
    1: createLiteral [..]    
    2: typeToTypeNodeHelper(aka typeToTypeNodeHelper) [..]
Run Code Online (Sandbox Code Playgroud)

编辑:我按照@Suraj Rao 的建议更新了我的 npm,我的当前版本为 6.0.0,然后我再次尝试构建,但出现了这个新的相关错误

Raj*_*dev 1

您可以尝试这些步骤,这可能会对您有所帮助!

首先尝试npm install并遵循以下方法之一......

  1. 将其添加到 package.json 脚本中

    "ionic:build": "node --max-old-space-size=8192 ./node_modules/@ionic/app-scripts/bin/ionic-app-scripts.js build",

  2. 运行命令:

    npm run ionic:build --prod

  3. 运行命令:

    cordova build android --release cordova build ios --release

或者

调整:

node_modules/.bin/ionic-app-scripts.cmd
Run Code Online (Sandbox Code Playgroud)

通过增加:

@IF EXIST "%~dp0\node.exe" (
  "%~dp0\node.exe"  "%~dp0\..\@ionic\app-scripts\bin\ionic-app-scripts.js" %*
) ELSE (
  @SETLOCAL
  @SET PATHEXT=%PATHEXT:;.JS;=;%
  node --max_old_space_size=4096  "%~dp0\..\@ionic\app-scripts\bin\ionic-app-scripts.js" %*
)
Run Code Online (Sandbox Code Playgroud)

然后运行ionic build android --prod

来源点击这里!

更新:

我不确定到底出了什么问题,但我可以理解有巨大的文件或内存使用量超出了限制。

尝试这个,

node --max-old-space-size=8192 --optimize-for-size --max-executable-size=8192 --max_old_space_size=8192 --optimize_for_size --max_executable_size=8192 node_modules/karma/bin/karma start --single-run --max_new_space_size=8192 --prod --aot

希望这对您有帮助!