1. 程式人生 > 其它 >前端打包時出現node記憶體溢位問題

前端打包時出現node記憶體溢位問題

前端專案打包編譯時出現以下情況:

原因:
在Node中通過JavaScript使用記憶體時只能使用部分記憶體(64位系統:1.4 GB,32位系統:0.7 GB),這個時候,如果前端專案非常的龐大,Webpack編譯時就會佔用很多的系統資源,如果超出了V8引擎對Node預設的記憶體限制大小時,就會產生記憶體洩露(JavaScript heap out of memory)的錯誤。

解決方案
既然V8引擎有對Node進行預設的記憶體限制大小,那麼在Node記憶體不足的時候,可以放寬記憶體大小的使用限制,可以在Node啟動的時候,傳遞--max-old-space-size或--max-new-space-size來調整記憶體大小的使用限制。

修改
build:"node --max_old_space_size=4096 build/build.js"
意思是將記憶體調整到4G。後面跟的路徑,意思是針對rollup模組中bin資料夾中的執行檔案,使其擴容。

4G若不夠 則修改
build:"node --max_old_space_size=8192 build/build.js"
則將記憶體調整到8G

再執行 npm run build