搜尋

首頁  >  問答  >  主體

node.js - webpack打包報javaScript heap out of memory,怎麼解決?

雷雷
滿天的星座滿天的星座2834 天前1276

全部回覆(2)我來回復

  • 为情所困

    为情所困2017-05-16 13:40:41

    哎,我終於自己搞定了。其實,現在發現我已開始的解決問題的思路沒有錯,就是往node命令列裡面新增 "--max_old_space_size"。錯就錯在,加的地方加錯了(可能是針對我這種環境不起作用?)。一開始我是參考了segmentfault上面一個同樣的weback打包導致nodejs內存溢出的一個問題所提供的方案來做的,就是在全局的webpack.cmd(路徑是:C:UsersAdministratorAppDataRoamingnpmwebpack.cmd)裡面添加,如下圖:

    但是發現沒有起作用,執行指令後還是記憶體溢位。然後我折騰了很久,第二天上了stackoverflow上面再次搜尋了一下答案,發現了這個答案:

    於是乎,我將我生產環境下打包所用的npm鉤子腳本改為:「set NODE_ENV =production && node --max_old_space_size=2048 node_modules/webpack/bin/webpack.js --config webpack.production.config.js」。也就是說我使用了局部/本地的webpack,而不是全域安裝的webpack來打包。透過為nodejs新增「--max_old_space_size=2048」來擴大記憶體為2*1024M=2G來解決了記憶體溢位問題。

    回覆
    0
  • 天蓬老师

    天蓬老师2017-05-16 13:40:41

    證據太少,無法破案!

    回覆
    0
  • 取消回覆