2017-05-24 58 views
1

我設置Java堆大小限制Xmx128m在的IntelliJ的「idea64.vmoptions」文件。但是,即使我在代碼中分配了千兆字節的內存,該程序仍然有效,但沒有發現任何內存不足的錯誤。我不能限制Java堆大小

什麼是對這種行爲的解釋。

PS:的IntelliJ讀取文件「idea64.vmoptions」,我查了它,那就是,當我把它設置爲Xmx16m,連的IntelliJ無法啓動。

感謝

+0

以什麼方式你分配GB的內存? –

+0

我只是在while循環中將對象放入散列表中。 –

+0

數額似乎非常小。如果有一些最低限度的設置,你實際上不能低於這個水平,我不會感到驚訝。 – vikingsteve

回答

2

我認爲,idea64.vmoptions設置了運行的IntelliJ IDEA本身所需的選項。它不控制IntelliJ中運行Java程序的選項。

檢查你的各項目類型的Edit Configurations。例如,在configuration of a jar applicationVM options框中存在以設置運行jar文件所需的java選項。在此框中設置-Xmx128m應該適合您。在idea64.vmoptions宣佈

0

VM選項僅用於的IntelliJ勞克。對於項目特定的配置可以通過 在intelliJ的想法中編輯「運行」 - >「運行/調試配置」。