我對 java 應用程式感到困惑。當它啟動時,它使用 -Xmx 256m 和 Xss 2m。我需要讓它使用更多的內存,因為當內存耗盡時它會不斷崩潰。所以我使用java -jar application.jar -Xmx 4G。
什麼也沒發生,它仍然使用內建的-Xmx 256m
如何覆蓋初始設定以為該應用程式提供更多記憶體?
答案1
首先,使用大寫X
as-Xmx
和-Xss
;-x
是一個錯誤。
其次,將所有 JVM 選項(包括-X
等等)放在-D
前面(-jar jarname
如果您使用它),否則放在主類別名稱之前。 run-jar 或 main-class 之後的任何參數都會傳遞給 Java 程序,而不是由 JVM 解釋。
PS:如果你想要 4G,我假設/希望你有 64 位元 java(和硬體)。