欢迎来到天天文库
浏览记录
ID:14397513
大小:75.50 KB
页数:12页
时间:2018-07-28
《如何在java调用系统命令或可执行程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、(浪曦教育)Java命令行运行参数说明大全Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOME"bin"java–option来启动,-option为虚拟机参数,JAVA_HOME为JDK安装路径,通过这些参数可对虚拟机的运行状态进行调整,掌握参数的含义可对虚拟机的运行模式有更深入理解。一、查看参数列表:虚拟机参数分为基本和扩展两类,在命令行中输入JAVA_HOME"bin"java就可得到基本参数列表,在命令行输入JAVA_HOME"bin"java–X就可得到扩展参数列表。二、基
2、本参数说明:1.-client,-server这两个参数用于设置虚拟机使用何种运行模式,client模式启动比较快,但运行时性能和内存管理效率不如server模式,通常用于客户端应用程序。相反,server模式启动比client慢,但可获得更高的运行性能。在windows上,缺省的虚拟机类型为client模式,如果要使用server模式,就需要在启动虚拟机时加-server参数,以获得更高性能,对服务器端应用,推荐采用server模式,尤其是多个CPU的系统。在Linux,Solaris上缺省采用server模式。2.-hotspot含义与cli
3、ent相同,jdk1.4以前使用的参数,jdk1.4开始不再使用,代之以client。3.-classpath,-cp虚拟机在运行一个类时,需要将其装入内存,虚拟机搜索类的方式和顺序如下:Bootstrapclasses,Extensionclasses,Userclasses。Bootstrap中的路径是虚拟机自带的jar或zip文件,虚拟机首先搜索这些包文件,用System.getProperty("sun.boot.class.path")可得到虚拟机搜索的包名。Extension是位于jre"lib"ext目录下的jar文件,虚拟机在搜索
4、完Bootstrap后就搜索该目录下的jar文件。用System.getProperty("java.ext.dirs”)可得到虚拟机使用Extension搜索路径。Userclasses搜索顺序为当前目录、环境变量CLASSPATH、-classpath。4.-classpath告知虚拟机搜索目录名、jar文档名、zip文档名,之间用分号;分隔。例如当你自己开发了公共类并包装成一个common.jar包,在使用common.jar中的类时,就需要用-classpathcommon.jar告诉虚拟机从common.jar中查找该类,否则虚拟机就会
5、抛出java.lang.NoClassDefFoundError异常,表明未找到类定义。在运行时可用System.getProperty(“java.class.path”)得到虚拟机查找类的路径。使用-classpath后虚拟机将不再使用CLASSPATH中的类搜索路径,如果-classpath和CLASSPATH都没有设置,则虚拟机使用当前路径(.)作为类搜索路径。推荐使用-classpath来定义虚拟机要搜索的类路径,而不要使用环境变量CLASSPATH的搜索路径,以减少多个项目同时使用CLASSPATH时存在的潜在冲突。例如应用1要使用a
6、1.0.jar中的类G,应用2要使用a2.0.jar中的类G,a2.0.jar是a1.0.jar的升级包,当a1.0.jar,a2.0.jar都在CLASSPATH中,虚拟机搜索到第一个包中的类G时就停止搜索,如果应用1应用2的虚拟机都从CLASSPATH中搜索,就会有一个应用得不到正确版本的类G。5.-D=value在虚拟机的系统属性中设置属性名/值对,运行在此虚拟机之上的应用程序可用System.getProperty(“propertyName”)得到value的值。如果value中有空格,则需要用双引号将该值括
7、起来,如-Dname=”spacestring”。该参数通常用于设置系统级全局变量值,如配置文件路径,应为该属性在程序中任何地方都可访问。6.-verbose[:class
8、gc
9、jni]在输出设备上显示虚拟机运行信息。verbose和verbose:class含义相同,输出虚拟机装入的类的信息,显示的信息格式如下:[Loadedjava.io.FilePermission$1fromsharedobjectsfile]当虚拟机报告类找不到或类冲突时可用此参数来诊断来查看虚拟机从装入类的情况。7.-verbose:gc在虚拟机发生内存回收时在输出
10、设备显示信息,格式如下:[FullGC268K->168K(1984K),0.0187390secs]该参数用来监视虚拟机内存回收的情况
此文档下载收益归作者所有