游客:
注册
|
登录
|
帮助
网友俱乐部
»
网络编程
»
JAVA教程
» Java 应用程序启动器的使用文档
网友生活网
|
网友学堂
如何获得金币?
诚招斑竹
IP归属地查询 PR查询 收录查询 whois查询
免费超短2级域名,your.jpy.cc
传世私服
|
传奇世界私服
注册亚洲交友中心,找个人来同居吧!
免费存储空间,免费网络硬盘
‹‹ 上一主题
|
下一主题 ››
投票
交易
悬赏
活动
打印
|
推荐
|
订阅
|
收藏
标题:
[基础]
Java 应用程序启动器的使用文档
ljjk5
元帅
UID 46706
精华
1
积分 99426
帖子 49690
威望 554
金币 48489
热心 505
阅读权限 100
注册 2007-2-25
状态 离线
#1
使用道具
发表于 2007-12-31 12:28
资料
个人空间
主页
短消息
加为好友
Java 应用程序启动器的使用文档
结构 java[options]class[argument...]
java[options]-jarfile.jar[argument...]
javaw[options]class[argument...]
javaw[options]-jarfile.jar[argument...]
oldjava[options]class[argument...]
oldjavaw[options]class[argument...]
options
命令行选项。
class
要调用的类名。
file.jar
要调用的jar文件名。只与-jar一起使用。
argument
传给main函数的参数。
说明
java工具启动Java应用程序。它通过启动Java运行时环境,装载指定的类并调用该类的main方法,从而实现此功能。main方法必须有以下的用法说明:
publicstaticvoidmain(String[])
缺省情况下,第一个非选项参数是要调用的类名。应当使用全限定类名。如果指定了-jar选项,那么第一个非选项参数是JAR归档文件的名称,该归档文件包含应用程序的类和资源文件以及Main-Class清单头指定的启动类。
Java运行时环境在下面三个位置集中查找启动类和使用到的其它类:自举类路径、安装方式扩展和用户类路径。
类名或JAR文件名后的非选项参数被传递给main函数。
JAVA和OLDJAVA
下面是java和oldjava之间的区别:
oldjava启动器不支持扩展机制。扩展包仍可用作类和资源归档文件。
oldjava启动器对所有类都使用自举类加载器,而java启动器只对自举类使用自举类加载器。这使得与基本类加载器不兼容的编程技术得以存在。
在java中,-classpath和-cp选项用于指定用户类的搜索路径,它们不能用来指定自举类的位置。而在oldjava中,-classpath和-cp选项指定包括自举类在内的所有类的位置。
注意:java和oldjava在CLASSPATH环境变量的使用上无不同之处。除非CLASSPATH被-classpath或-cp覆盖了,否则它总是指定用户类的位置,而不提供自举类的任何信息。 oldjava启动器支持所有的1.2安全功能。但对于oldjava来说,从类路径加载的类没有保护域,因而在java启动器中只有自举类才拥有的所有权限它都拥有。
以下命令使用oldjava:
oldjava-classpath<path>...
它等同于下述使用java的命令:
java-Xbootclasspath:<path>-Djava.ext.dirs=...
上述两种情形中,<path>都包含文件rt.jar(有关rt.jar及其在JDK软件中的位置的说明,参见JDK文件结构文档)。
JIT
启动器的缺省行为是用“即时”编译器(或JIT)执行字节码。缺省编译器位于jreinsymcjit.dll中。当加载类时,JIT将类字节码转换成本机代码。使用JIT会导致在每个类加载后有短暂延迟,但可提高程序的总体性能。在某些情况下,执行时间可缩短十分之一。
如果禁用了JIT,解释器将直接执行字节码。有两种办法可将JIT禁用:
用以下的set命令将环境变量JAVA_COMPILER设为NONE:
C:>setJAVA_COMPILER=NONE
在WindowsNT上,也可用系统控制面板设置JAVA_COMPILER。
用-D命令行选项将java.compiler设为NONE:
C:>java-Djava.compiler=NONEmyapp
使用命令行选项将覆盖JAVA_COMPILER环境变量的设置。
也可用JAVA_COMPILER或java.compiler来指定要使用另一个JIT:
C:>setJAVA_COMPILER=foo
或
C:>java-Djava.compiler=foomyapp
将.dll扩展名加到"foo"后,该例中虚拟机将查找名为foo.dll的JIT编译器。搜索其它编译器是在jrein目录中和系统的PATH(路径)上进行的。若找不到这样的编译器,虚拟机将缺省使用解释器。
选项
启动器有一组标准选项,当前的运行时环境支持这些选项并且将来的版本也将支持它们。还有一组其它的非标准选项是特定于目前的虚拟机实现的,将来可能要有变化。非标准选项以-X打头。 标准选项
-classpath类路径
-cp类路径
指定一个用于查找类文件的列表,它由目录、JAR归档文件和ZIP归档文件组成。类路径项用分号(;)分隔。指定-classpath或-cp将覆盖CLASSPATH环境变量的所有设置。
-classpath或-cp与java或javaw一起使用时用于指定用户类和自举类的类路径。-classpath或-cp与oldjava或oldjavaw一起使用时仅用于指定用户类的类路径。
如果不使用-classpath和-cp,且没有设定CLASSPATH,则用户类路径由当前目录(.)构成。
有关类路径的详细信息,请参阅设置类路径。
-D属性=值
设置系统属性的值。
-jar
执行封装在JAR归档文件中的程序。第一个参数是JAR归档文件的名称而不是启动类名。启动类由Main-Class清单头指定。JAR文件是所有用户类的源,其它的用户类路径设置将被忽略。
oldjava和oldjavaw工具不支持-jar选项。
-verbose
-verbose:class
显示每个所加载的类的信息。
-verbose:gc
报告每个垃圾收集事件。
-verbose:jni
报告有关本地方法的使用和其它Java平台相关代码接口活动的信息。
-version
显示版本信息并退出。
-?
-help
显示用法信息并退出。
-X
显示非标准选项的有关信息并退出。
非标准选项
-Xbootclasspath:自举类路径
指定以分号分隔的目录、JAR归档文件和ZIP归档文件列表,用以查找自举类文件。这些自举类文件用来取代JDK1.2软件中所包括的自举类文件。
-Xdebug
启动激活的调试器。Java解释器将输出一密码供jdb使用。有关详细资料及程序示例,请参阅jdb说明。
-Xnoclassgc
禁用类垃圾收集
-Xmsn
指定内存分配池的初始容量。该值必须大于1000。要使该值扩大1000倍,须附加上字母k,要使该值扩大一百万倍,须附加上字母m。缺省值为1m。
-Xmxn
指定内存分配池的最大容量。该值必须大于1000。要将它扩大1000倍,须附加上字母k,要将该值扩大一百万倍,须附加上字母m。缺省值为16m。
-Xrunhprof[:help][:<子选项>=<值>,...]
启用cpu、堆或监视器监控操作。该选项后面一般跟着一个列表,该列表由以逗号分隔的"<子选项>=<值>"对所组成。运行命令java-Xrunhprof:help可获得子选项及其缺省值的列表。
-Xrs
减少操作系统信号的使用。
-Xcheck:jni
对Java平台相关代码接口函数进行额外检查
网友
ljjk5
签名 - 网友社区
===
[广告]
免费域名(Free Subdomain)
免费空间(Free hosting)
PR查询(Google Pagerank)
投票
交易
悬赏
活动
控制面板首页
编辑个人资料
积分交易
公众用户组
好友列表
个人空间管理
基本概况
流量统计
客户软件
发帖量记录
论坛排行
主题排行
发帖排行
积分排行
在线时间
管理团队
管理统计
当前时区 GMT+8, 现在时间是 2008-10-13 11:46
信产部ICP备案:
京ICP备05066424号
北京市公安局网监备案:1101050648号
Powered by
Discuz!
5.5.0
TOP
清除 Cookies
-
联系我们
-
网友俱乐部
-
Archiver
-
WAP