While building angular code using
ng build command or
ng start command one can get an out-of-memory or low memory error. This can occur in a system with lower RAM or even in those with higher RAM.
When I run ng build on my server, during the Generating browser application bundles (phase: building)… message, eventually I get an out-of-memory crash. This actually happens on my server, which has 2GB of RAM, as well as on my development machine, which has 16GB of RAM.ng build causes out of memory · Issue #19526 · angular/angular-cli (github.com)
There might be one or more causes for this and this totally depends upon the version and used libraries. To fix this error one can try the following methods to increase heap memory for nodejs.
The first and most common thing you could try is using the node option –max_old_space_size
parameter with higher memory size.
This Node option sets memory used by node js process should be a maximum 3/4th of available memory.
How to use it?
You can set this option using several methods and you can use any of this or you can find another one.
node --max_old_space_size=5048 ./node_modules/@angular/cli/bin/ng build --prod
ng node --max_old_space_size=4096 && ng build --prod
On Mac and Linux you can do this by
NODE_OPTION environment variables.
Or you can set permanently add the above to
.zshrc file in Mac and
.bashrc file in Linux inside the home folder.
On windows temporarily you can set environment variables using
SET command or adding
NODE_OPTIONS to the environment variables.
This can also be done in scrip inside
Add this code inside scripts
"build-prod": "node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --prod"
On terminal run as follows
>npm run build-prod