Java。如何覆盖初始参数?

Java。如何覆盖初始参数?

我为一个 Java 应用程序而苦恼。启动时,它使用 -Xmx 256m 和 Xss 2m。我需要让它使用更多内存,因为内存不足时它会不断崩溃。所以我使用 java -jar application.jar -Xmx 4G。

什么都没发生,它仍然使用内置的 -Xmx 256m

我如何覆盖初始设置来为该应用程序提供更多内存?

答案1

首先,使用大写字母X和;是错误的-Xmx-Xss-x

其次,将所有 JVM 选项(包括-X-D等)放在 BEFORE 之前-jar jarname(如果使用的话),否则放在 main-class 名称之前。run-jar 或 main-class 之后的任何参数都将传递给 Java 程序,而不会由 JVM 解释。

附言:如果您想要 4G,我假设/希望您有 64 位 Java(和硬件)。

相关内容