Java虚拟机(JVM)的启动参数用于配置和调整JVM的运行环境和行为。
JVM启动参数分类
JVM的启动参数大致可以分为两类:标准参数和非标准参数。
标准参数
堆内存设置:
-Xms:设置JVM堆的初始大小。
-Xmx:设置JVM堆的最大大小。
线程栈设置:
-Xss:设置每个线程的堆栈大小。
其他标准参数:
-client 和 -server:设置JVM的运行模式(客户端模式或服务器模式)。
-classpath 或 -cp:设置JVM搜索类文件的路径。
非标准参数
非标准参数通常用于调试或性能调优,不同的JVM实现可能支持不同的非标准参数。以下是一些常用的非标准参数:
垃圾回收器设置:
-XX:+UseG1GC:启用G1垃圾回收器。
编译日志和阈值设置:
-XX:+LogCompilation:记录编译日志。
-XX:CompileThreshold=1000:设置编译阈值。
元空间设置:
-XX:MaxMetaspaceSize:设置元空间的最大大小(在较新版本的Java中)。
示例
要运行一个Java程序并设置堆的初始大小为256MB,最大大小为512MB,并设置系统默认的文件编码为UTF-8,可以使用以下命令:
java -Xms256m -Xmx512m -Dfile.encoding=UTF-8 MyProgram
其中,MyProgram 是你的Java程序的主类名(或包含main方法的类的名称)。