java 启动命令解析

前言
     在看Btrace源码的时候,了解到一些陌生的启动命令参数,例如-Xbootclasspath等,之前也曾遇到过,但并没有去进一步全面了解,在此则进行介绍。

简介
     Java 的启动参数包括标准的参数(运行环境参数)和非标准的参数(JVM实现支持的参数)。

标准的参数
参数描述                                                                  
-client client模式启动
-server Service模式启动
-classpath   classpath -cp   classpath
加入classpath
-D property = value
加入到system property 中
-d32 -d64
启动的操作系统位数
-enableassertions [:<package name>"..." | :<class name> ] -ea [:<package name>"..." | :<class name> ]
启动断言
-disableassertions [:<package name>"..." | :<class name> ] -da [:<package name>"..." | :<class name> ]
禁止断言
-enablesystemassertions -esa
启动系统断言
-disablesystemassertions -dsa
禁止系统断言
-jar 启动jar
-verbose -verbose:class
打印载入的class信息
-verbose:gc 打印GC的收集时的信息
-verbose:jni 打印jni调用native的方法行为
-version 打印java的版本信息后退出
-showversion 打印java的版本信息,但不退出
-? -help
帮助
-X 打印非标准的参数信息

非标准的参数
参数                                        描述                                         
-Xint 设置jvm以解释模式执行,所有字节码解释执行
-Xbatch 关闭后台代码编译。正常情况下,VM会在后台编译代码,运行的方法将以解释的模式运行,知道后台编译完成。该参数则强制编译在前台执行,等所有编译完才能运行代码。
-Xdebug 启动debugger。具体可以参考  jdb description
-Xbootclasspath: bootclasspath
指定用冒号分割的文件目录、jar或者zip文件,加入到boot class。用来代替java2 SDK中的boot class 文件。常被用来覆盖rt.jar的类。一般情况不会使用。
-Xbootclasspath/a: path
Xbootclasspath 参数用途一样,只是该选项是追加path到bootstrap class path中,而非替换。
-Xbootclasspath/p: path
Xbootclasspath/a 参数用途一样,只是追加的目录将优先于默认的bootstrap class path
-Xcheck:jni 在执行native方法前进行检查。JVM会校验传递给jni方法的参数在执行jni请求前。在native中一个非法的数据将会导致JVM终止。如果开启该参数,将会降低性能。
-Xfuture 对class文件进行严格检查。目的为了向后兼容。推荐开发人员使用该参数。
-Xnoclassgc 关闭class 的gc功能
-Xincgc 开启增量gc的功能,默认是关闭的。有助于减少gc的停顿时间,但可能会导致大概10%的性能损耗。
-Xloggc: file
和verbose:gc参数类似,只是将gc信息打印在文件而不是控制台。和verbose:gc不同的是输出的信息中带有时间。
-Xms n
指定初始堆的大小,默认单位为k。可以指定为m
-Xmx n
指定堆得最大的大小
-Xss n
设置线程栈的大小
-Xprof 跟踪正在运行的程序,并输出跟踪信息到控制台。该参数主要用在开发环境,而不是生产环境。
-Xrunhprof [:help ][:<suboption>=<value>,... ] 开启cpu、heap或者监视器的性能分析。具体介绍,可以参考  java -Xrunhprof:help
-Xrs 减少JVM对操作系统信号(signals)的使用。


以上参数为1.4.2的基础的,文档地址: http://docs.oracle.com/javase/1.4.2/docs/tooldocs/solaris/java.html
刚发现了1.6.0的文档地址,对比了下,发现基本参数一样。地址: http://docs.oracle.com/javase/6/docs/technotes/tools/windows/java.html

关于JVM的其他参数,后续进行补充。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值