JavaScript heap out of memory in angular 2

2019-05-27 05:47发布

I am using Angular CLI. Please check my CLI info

@angular/cli: 1.2.1
node: 6.10.0
os: win32 x64
@angular/animations: 4.1.1
@angular/common: 4.0.0
@angular/compiler: 4.0.0
@angular/compiler-cli: 4.0.0
@angular/core: 4.0.0
@angular/forms: 4.0.0
@angular/http: 4.0.0
@angular/platform-browser: 4.0.0
@angular/platform-browser-dynamic: 4.0.0
@angular/router: 4.1.1

When I use ng serve --aot I am getting the following error.

Last few GCs

893427 ms: Mark-sweep 1344.1 (1434.3) -> 1339.9 (1434.3) MB, 925.7 / 0.0 ms [allocation failure] [GC in old space requested]. 894468 ms: Mark-sweep 1339.9 (1434.3) -> 1339.9 (1434.3) MB, 1040.5 / 0.0 ms [allocation failure] [GC in old space requested]. 895402 ms: Mark-sweep 1339.9 (1434.3) -> 1339.6 (1418.3) MB, 933.7 / 0.0 ms [last resort gc]. 896331 ms: Mark-sweep 1339.6 (1418.3) -> 1339.8 (1418.3) MB, 928.1 / 0.0 ms [last resort gc].

JS stack trace

Security context: 000001AF8A2CFB61 2: /* anonymous */ [C:\project_folder\node_modules\source-map\lib\source-node.js:100] [pc=0000016E99866533] (this=00000346870554E1 ,mapping=000003C18FDC93C9 ) 3: arguments adaptor frame: 3->1 4: InnerArrayForEach(aka InnerArrayForEach) [native array.j...

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

4条回答
孤傲高冷的网名
2楼-- · 2019-05-27 05:55

try to modify the files and replace their contents with the following: (in the folder : node_modules\bin)

Modify ng.cmd:

@IF EXIST "%~dp0\node.exe" (
  "%~dp0\node.exe" --max_old_space_size=5048 "%~dp0\..\angular-cli\bin\ng" %*
) ELSE (
  @SETLOCAL
  @SET PATHEXT=%PATHEXT:;.JS;=;%
  node --max_old_space_size=5048 "%~dp0\..\angular-cli\bin\ng" %*
)

Modify ngc.cmd :

@IF EXIST "%~dp0\node.exe" (
  "%~dp0\node.exe" --max_old_space_size=5048 "%~dp0\..\@angular\compiler-cli\src\main.js" %*
) ELSE (
  @SETLOCAL
  @SET PATHEXT=%PATHEXT:;.JS;=;%
  node --max_old_space_size=5048 "%~dp0\..\@angular\compiler-cli\src\main.js" %*
)
查看更多
欢心
3楼-- · 2019-05-27 06:13

for angular 7, I increased the maximum memory allocated for budgets in angular.json file.

"budgets": [
                {
                  "type": "initial",
                  "maximumWarning": "2mb",
                  "maximumError": "11mb"
                }
]

then ran the following command: node --max_old_space_size=10500 'node_modules/@angular/cli/bin/ng' build --prod

in your case you should try to run this: node --max_old_space_size=10500 'node_modules/@angular/cli/bin/ng' serve --aot

查看更多
ゆ 、 Hurt°
4楼-- · 2019-05-27 06:22

This issue comes if the angular app will become bigger in size to compile. Please increase your node ram memory that will solve the issue. (Default node ram memory is 1600mb, increase it to around 3200)

查看更多
爷、活的狠高调
5楼-- · 2019-05-27 06:22

I had the same issue In my tsconfig.json i had

"include": [ "**/*" ],

after removing this include, the ng build behave normal again

查看更多
登录 后发表回答