我知道 -D 属性可以由 System.setProperty() 设置,它采用 key=>value 形式。
但是如何设置 -XX 选项。我特别想在 main(); 中设置 -XX:+PrintGCDetails
我知道 -D 属性可以由 System.setProperty() 设置,它采用 key=>value 形式。
但是如何设置 -XX 选项。我特别想在 main(); 中设置 -XX:+PrintGCDetails
一旦 JVM 启动,您就无法更改它。这些不是 Java 系统属性,而是控制 JVM 系统启动和配置的参数。
设置这些值的唯一方法是启动另一个 Java 进程。您可以使用所需的参数启动新进程并退出。流程开始后,您将无法更改选项。
如果您正在启动一个 java 小程序,您可以将它们传递到一个名为 java_arguments 的参数中。
如果你正在启动一个 JNLP 程序,你可以像这样传递参数:
<resources>
<jar href="MyApp.jar" />
<java version="1.6+" initial-heap-size="5m" max-heap-size="256m" java-vm-args="-XXSomeOption" />
</resources>
一旦应用程序运行,您就无法更改这些参数,但是您可以通过查看 java.home 等系统属性来确定使用哪个 JVM 来启动您的程序,从而重新启动 java。