java命令
java通过java虚拟机装载和执行编译文件,java虚拟机通过java -option 命令启动,option为虚拟机参数
虚拟机参数主要分为基本(输入java)和扩展(输入java X)两类
一、基本参数
命令 | 说明 |
---|---|
-classpath,-cp | 两个是同义词,参数意义一样,用于告知虚拟机搜索目录名,jar文档名,zip文档名 |
-D<propertyName>=value | 在虚拟机系统属性中设置属性名/值对,应用程序可以通过System.getProperty(“propertyName”)得到value的值 |
-client,-server | 设置虚拟机的运行模式,client启动较快,但运行时性能和内存管理效率不如server模式,server模式启动比client慢,但可获得更高的运行性能 |
-verbose[:class | gc |
-verbose:gc | 在虚拟机发生内存回收时在输出设备显示信息 |
-verbose:jni | 在虚拟机调用native方法是输出设备显示信息 |
-version | 显示虚拟机版本信息然后退出 |
-ea[:<packagename>…|:<classname>] | 断言,用于诊断运行时问题ea:com.xxx |
-da[:<packagename>…|<classname] | 设置虚拟机关闭断言处理 |
-agentlib:<libname>[=<options>] | 装载本地代理库,libname为本地代理库文件名,虚拟机的搜索路径为环境变量的路径,options为传给本地库启动时的参数 |
二、扩展参数
参数 | 说明 |
---|---|
-Xmixed | 设置-client模式虚拟机对使用频率高的方式进行Just-In-Time编译和执行 |
-Xint | 设置-client模式下运行的虚拟机以解释方式执行类的字节码,不将字节码编译为本机码 |
-Xbootclasspath:path | 改变虚拟机装在缺省系统运行包rt.jar,从-Xbootclasspath设定的搜索路径中装载运行类 |
-Xnoclassgc | 关闭虚拟机对class的垃圾回收功能 |
-Xincgc | 启动增量垃圾收集器。增量垃圾收集器能减少偶然发生的长时间的垃圾回收造成的暂停时间 |
-Xloggc:<file> | 将虚拟机每次垃圾回收的信息写到日志文件中 |
-Xbatch | 关闭虚拟机后台编译,在前台编译完成后再执行 |
-Xms<size> | 设置虚拟机可用内存堆的初始大小,单位:默认字节,大小为1024的整数倍并且要大于1MB,可用k或m为单位来设置较大的内存数。 |
-Xmx<size> | 设置虚拟机内存堆的最大可用大小,改值要大于2MB |
-Xss<size> | 设置线程栈的大小,通常操作系统分配给线程栈的缺省大小为1MB |
-Xprof | 输出CPU运行时的诊断信息 |
-Xfuture | 对类文件进行严格格式检查,以保证类代码复合代码规范 |
-Xrs | 减少虚拟机中操作系统的信号的使用 |
-Xcheck:jni | 调用JNI函数时进行附加的检查,使用此参数会造成性能下降 |