JDK开发工具包详解

JDK、JRE、JVM的含义以及关系 JVM就像是汽车的发动机。它是真正做功、让车跑起来的核心部件。JRE就像是包含发动机的汽车底盘+车身。它包括了发动机和让汽车能正常行驶的所有基本部件(车轮、方向盘、车架等)。你有了它,就能开车(运行Java程序)。JDK就像是一整个汽车工厂。它包含了制造汽车所需的一切:底盘、车身、发动机,还有所有的设计图纸、工具和流水线(编译器、调试器等)。你有了它,既能制造汽车(开发Java程序),也能开车(运行Java程序)。 阅读详情

 JDK开发工具包详解

Java 开发工具包是Sun公司的Java Software产品。他可以非常方便的开和

调试JAVA应用程序。下面就详细介绍这些工具的使用:
 
====================
 
javadoc.exe
   
功能说明:Java API文档生成器从Java源文件生成API文档HTML页。
 
语法:javadoc [ 命令选项 ] [ 包名 ] [ 源文件名 ] [ @files ]
  其中[ 包名 ]为用空格分隔的一系列包的名字,包名不允许使用通配符,如(*)。[ 源文件名 ]为用空格分隔的一系列的源文件名,源文件名可包括路径和通配符,如(*)。[ @files ]是以任何次序包含包名和源文件的一个或多个文件。
 
补充说明:
            Javadoc解析Java源文件中的声明和文档注释,并产生相应HTML缺省),描述公有类、保护类、内部类、接口、构造函数、方法和域。在实现时,Javadoc要求且依赖于java编译器完成其工作。Javadoc调用部分javac编译声明部分,忽略成员实现。它建立类的内容丰富的内部表示,包括类层次和“使用”关系,然后从中生成HTML。Javadoc还从源代码的文档注释中获得用户提供的文档。当Javadoc建立其内部文档结构时,它将加载所有引用的类。由于这一点,Javadoc必须能查找到所有引用的类,包括引导类、扩展类和用户类。

命令选项:
-overview             指定javadoc应该从path/filename所指定的“源”文件中获取概述
               档,并将它放到概述页(overview-summary.html)。其中path/filename 是相对于-sourcepath的相对路径名。
  -public                   只显示公有类及成员。
  -protected      只显示受保护的和公有的类及成员。这是缺省状态。
  -package             只显示包、受保护的和公有的类及成员。
  -private               显示所有类和成员。
  -help           显示联机帮助,它将列出这些javadoc和doclet命令行选项
-doclet class         指定启动用于生成文档的docle 的类文件。该doclet定义
              了输出的内容和格式。如果未使用-doclet选项,则javadoc使
              用标准doclet生成缺省HTML格式。该类必须包含start(Root)法
              。该启 动类的路径由 -docletpath选项定义。
-docletpath       指定doclet类文件的路径,该类文件用-doclet选项指定。
             如果doclet已位于搜索路径中,则没有必要使用该选项。
-sourcepath       当将包名传递到javadoc命令中时,指定定位源文件(.java)
的搜索路径。注意只有当用 javadoc命令指定包名时才能
使sourcepath选项 -- 它将不会查找传递到javadoc命令中的.java文件。如果略-sourcepath,则javadoc使用类路径查找源文件。 
-classpath         指定javadoc将在其中查找引用类的路径 -- 引用类是指
带文档的类加上它们引用的任何类。Javadoc将搜索指定
路径的所有子录。 classpathlist可以包括多个路径,彼此
用逗号分隔。
-bootclasspath     指定自举类所在路径。它们名义上是Java平台类。这个
bootclasspath是Javadoc将用来查找源文件和类文件的搜
索路径的一部分。在classpathlist中用冒号(:)分隔目录
-extdirs dirlist            指定扩展类所在的目录。它们是任何使用Java扩展机制
的类。这个extdirs是Javadoc将用来查找源文件和在文
件的搜索路径的一部分。在dirlist中用冒号(:)分隔目
录。
-verbose                 在javadoc运行时提供更详细的信息。不使用verbose选
项时,将显示加载源文件、生成文档(每个源文件一条
信息)和排序的信息。 verbose选项导致打印额外的信
息,指定解析每个java源文件的毫秒
  -locale                  指定javadoc在生成文档时使用的环境。
-encoding              指定源文件编码名,例如EUCJIS/SJIS。如果未指定该选
项,则使用平台缺省转换器。
-J[flag]                  将flag直接传递给运行javadoc的运行时系统java。注意
在J和flag之间不能有空格。
 
  标准 Doclet 提供的选项
 
-d                         directory 指定javadoc保存生成的HTML件的目的目录。省
略该选项将导致把文件保存到当前目录中。其中directory可以是绝对路径或相对当前工作目录的相对路径。
-use                 对每个带文档类和包包括一个“用法”页。该页描述使用给
定类或包的任何API 的包、类、方法、构造函数和域。对于
给定类 C,使用类 C 的任何东西将包括 C 的子类、声明
为C 的域、返回 C 的方法以及具有 C 类型参数的方法和构
造函数。
  -version        在生成文档中包括 @version 文本。缺省地将省略该文本。
  -author      在生成文档中包括 @author 文本。
-splitindex     将索引文件按字母分割成多个文件,每个字母一个文件,再加
上一个包含所有以非字母字符开头的索引项的文件。
-windowtitle 指定放入 HTML <title>标记中的标题。它将出现在窗口标题
栏中和为该页创建的任何浏览器书签(最喜爱的位置)中。
该标 题不应该包含任何 HTML 标记,因为浏览器将不能正
确释它们。在 title 中的任何内部引号必须转义。如果省略
–windowtitle,则 Javadoc 对该选项使用 -doctitle 的值。
-doctitle         指定放置在靠近概述概览文件顶部的标题。该标题将作为一级
                     标题,居中地直接放在导航栏下面。title 可包含 html 标记和
空格,但是如果这样,则必须用引号将它括起。在 title 中的
任何内部引号必须转义。
-title[title]    该选项不再存在。它仅存在于 Javadoc 1.2 的 Beta 版中。它
已重命名为 -doctitle。重命名该选项是为了更清楚地表示它定
义文档标题而不是窗口标题。
-header         指定放置在每个输出文件顶部的页眉文本。该页眉将放在上
                  部导航栏的右边。header 可包含 HTML 标记和空格,但是如
                   果这样则必须用引号将它括起。在 header 中的任何内部引号
                   必须转义。
-footer         指定放置在每个输出文件底部的脚注文本。脚本将放置在下部
                  导航栏的右边。footer 可包含 html 标记和空格,但是如果这
                  样,则必须用引号将它括起。在 footer 中的任何内部引号必须
                  转义。
-bottom        指定放置在每个输出文件底部的文本。该文本将放置在页底,
                  位于下部导航栏的下面。其中 text 可包含 HTML 标记和空
                  格,但是如果这样,则必须用引号将它括起。在 text 中的任
                  何内部引号必须转义。
-link      创建链接指向已用 javadoc-生成的外部引用类的文档。参数
                 docURL是想要链接到的 javadoc-生成的外部文档的 URL。该
                  位置可以是相对的或绝对的 URL。
-linkoffline  [docURL][packagelistURL] 该选项为外部引用类名字创建指
向 文档的链接。
  -group          将概述页上的包分成指定的组,每组一个表格。用不同的 -
                                group 选项指定每个组。各组按命令行中指定的次序出现在页
                     面上。组内的包按字母排序。对于给定 -group 选项,与
                               packagepattern 表达式列表匹配的包出现在标题groupheading
                     的表格中。
-nodeprecated           防止在文档中生成任何不鼓励使用的 API。它执行
                          -nodeprecatedlist 所做的事情,并且它不在文档其余部分生成任何不鼓励使用的 API。当编写代码并不想被不鼓励使用的代码分心时,这是非常有用的。
-nodeprecatedlist        防止在生成文件中包含不鼓励使用的 API 列表(deprecated-list.html)并防止在导航栏中包含该页的链接。(但是,javadoc 继续在文档其余部分生成不鼓励使用的 API。)如果源代码未包含不鼓励使用的 API,并且想要导航栏更干净,则它是非常有用的。
  -notree                在生成文档中忽略类/接口层次。缺省地,将产生该层次。
  -noindex              在生成文档中忽略索引。缺省地,将产生索引。
  -nohelp                在输出的每页顶部和底部的导航栏中忽略“帮助”链接。
  -nonavbar            防止产生导航栏、页眉和脚注,否则它们将出现在生成
                  页的顶部和底部。它对“bottom”选项没有影响。当只
对内容感兴趣并且没有必要导航时,例如仅将文件转换
成 PostScript 或 PDF以进行打印,-nonavbar 选项是非
常有用的。
   -helpfile                  指定顶部和底部导航栏中“帮助”链接所链接到的替代
帮助文件path/filename 的路径。不使用该选项时,javadoc 自动创建帮助文件 help-doc.html,它在 Javadoc 中硬编码。该选项使得可覆盖这种缺省情况。其中 filename 可以是任何名字,不局限于 help-doc.html --Javadoc 将相应调整导航栏中的链接。
-stylesheetfile      指定替代 HTML 样式表单文件的路径。不使用该选项
时,Javadoc将自动创建样式表单文件 stylesheet.css,它在 Javadoc 中硬编码。该选项使得可覆盖这种缺省情况。其中 filename 可以是任何名字,不局限于 stylesheet.css。
-docencoding         指定输出 HTML 文件的编码方式。
 
 
====================
 
jar.exe
 
功能说明:Java归档工具
 
语法:jar [ 命令选项 ] [manifest] destination input-file [input-files]
 
补充说明:
  jar工具是个java应用程序,可将多个文件合并为单个JAR归档文件。jar是个多用途的存档及压缩工具,它基于ZIP和ZLIB压缩格式。然而,设计jar的主要目的是便于将java applet或应用程序打包成单个归档文件。将applet或应用程序的组件(.class 文件、图像和声音)合并成单个归档文件时,可以用java代理(如浏览器)在一次HTTP事务处理过程中对它们进行下载,而不是对每个组件都要求一个新连接。这大大缩短了下载时间。jar还能压缩文件,从而进一步提高了下载速度。此外,它允许applet的作者对文件中的各个项进行签名,因而可认证其来源。jar工具的语法基本上与tar命令的语法相同。
 
命令选项:
  -c     在标准输出上创建新归档或空归档。
  -t     在标准输出上列出内容表。
-x                  从标准输入提取所有文件,或只提取指定的文件。如果省略了file,则提取所有文件;否则只提取指定文件。
-f                   第二个参数指定要处理的jar文件。在-c(创建)情形中,第二个参数指的是要创建的jar文件的名称(不是在标准输出上)。在-t(表(或-x(抽取)这两种情形中,第二个参数指定要列出或抽取的jar文件。
  -v         在标准错误输出设备上生成长格式的输出结果。
  -m        包括指定的现有清单文件中的清单信息。
          用法举例:“jar cmf myManifestFile myJarFile *.class”
  -0         只储存,不进行 ZIP 压缩。
  -M        不创建项目的清单文件。
  -u         通过添加文件或更改清单来更新现有的 JAR 文件。
                例如:“jar -uf foo.jar foo.class”将文件 foo.class 添加到现有的JAR文件foo.jar中,而“jar umf manifest foo.jar”则用manifest中的信息更新foo.jar的清单。
-C        在执行 jar 命令期间更改目录。例如:“jar -uf foo.jar -C classes *”将 classes目录内的所有文件加到foo.jar中,但不添加类目录本身。
 
 程序示例:
  1:将当前目录下所有CLASS文件打包成新的JAR文件:
jar cf file.jar *.class
  2:显示一个JAR文件中的文件列表
jar tf file.jar
  3:将当前目录下的所有文件增加到一个已经存在的JAR文件中
jar cvf file.jar *
 
 
====================
 
javap.exe
 
功能说明:Java 类文件解析器。

语法:javap [ 命令选项 ] class. . .


补充说明:
  javap 命令用于解析类文件。其输出取决于所用的选项。若没有使用选项,javap 将输出传递给它的类的 public 域及方法。javap 将其输出到标准输出设备上。


命令选项:
  -help                   输出 javap 的帮助信息。
  -l                        输出行及局部变量表。
  -b                       确保与 JDK 1.1 javap 的向后兼容性。
  -public         只显示 public 类及成员。
  -protected          只显示 protected 和 public 类及成员。
  -package            只显示包、protected 和 public 类及成员。这是缺省设置。
  -private              显示所有类和成员。
  -J[flag]               直接将 flag 传给运行时系统。
  -s                        输出内部类型签名。
-c                        输出类中各方法的未解析的代码,即构成 Java 字节码的指
令。
  -verbose             输出堆栈大小、各方法的 locals 及 args 数。
  -classpath         指定 javap 用来查找类的路径。如果设置了该选项,则它将覆盖缺省值或 CLASSPATH 环境变量。目录用冒号分隔。
- bootclasspath指定加载自举类所用的路径。缺省情况下,自举类是实现核
心 Java平台的类,位于 jrelibt.jar 和 jrelibi18n.jar 中。
  -extdirs      覆盖搜索安装方式扩展的位置。扩展的缺省位置是 jrelibext。
 
 
====================
 
javah.exe
 
功能说明:       C 头文件和 Stub 文件生成器。javah 从 Java 类生成 C 头文件和 C 源文件。这些文件提供了连接胶合,使 Java 和 C 代码可进行交互。

语法: javah [ 命令选项 ] fully-qualified-classname. . .
        javah_g [ 命令选项 ] fully-qualified-classname. . .

补充说明:
  javah 生成实现本地方法所需的 C 头文件和源文件。C 程序用生成的头文件和源文件在本地源代码中引用某一对象的实例变量。.h 文件含有一个 struct 定义,该定义的布局与相应类的布局平行。该 struct 中的域对应于类中的实例变量。
  头文件名以及在头文件中所声明的结构名都来源于类名。如果传给 javah 的类是在某个包中,则头文件名和结构名前都要冠以该包名。下划线 (_) 用作名称分隔符。
  缺省情况下,javah 为每个在命令行中列出的类都创建一个头文件,且将该文件放在当前目录中。用 -stubs 选项创建源文件。用 -o 选项将所有列出类的结果串接成一个单一文件。
  缺省情况下,javah 为每个在命令行中列出的类都创建一个头文件,且将该文件放在当前目录中。用 -stubs 选项创建源文件。用 -o 选项将所有列出类的结果串接成一个单一文件。

命令选项:
-o[输出文件]     将命令行中列出的所有类的头文件或源文件串接到输出文件中。-o 或 -d 两个选项只能选择一个。
-d[目录]             设置 javah 保存头文件或 stub 文件的目录。-d 或 -o 两个
选项只能选择一个。
  -stubs                 使 javah 从 Java 对象文件生成 C 声明。
-verbose             指明长格式输出,并使 javah 将所生成文件的有关状态的
              信息输出到标准输出设备中。
  -help                   输出 javah 用法的帮助信息。
  -version              输出 javah 的版本信息。
-jni                      使 javah 创建一输出文件,该文件包含 JNI 风格的本地方法函数原型。这是缺省输出,所以 -jni 的使用是可选的。
-classpath          指定javah 用来查询类的路径。如果设置了该选项,它将覆盖缺省值或 CLASSPATH 环境变量。目录用冒号分隔。
-bootclasspath    指定加载自举类所用的路径。缺省情况下,自举类是实现核心 Java平台的类,位于 libt.jar 和 jrelibi18n.jar 中。
  -old                     指定应当生成旧 JDK1.0 风格的头文件。
 -force                  指定始终写输出文件。
 

====================
 
javac.exe
 
语法:javac <选项> <源文件>
命令选项:
 -g                    生成所有调试信息
 -g:none               生成无调试信息
 -g:{lines,vars,source}    生成只有部分调试信息
 -O                   优化;可能妨碍调试或者增大类文件
 -nowarn               生成无警告
 -verbose              输出关于编译器正在做的信息
 -deprecation           输出使用了不鼓励使用的API的源程序位置
 -classpath             指定用户类文件的位置
 -sourcepath                指定输入源文件的位置
 -bootclasspath               覆盖自举类文件的位置
 -extdirs                         覆盖安装的扩展类的位置
 -d <目录>             指定输出类文件的位置
 -encoding                       指定源文件中所用的字符集编码
 -target                    生成指定虚拟机版本的类文件
 -help                 打印出标准选项
 

====================
 
appletviewer.exe
 
功能说明:
Java applet 浏览器。appletviewer 命令可在脱离万维网浏览器环境的情况下运行 applet。

语法:appletviewer [ threads flag ] [ 命令选项 ] urls ...
 
补充说明:
  appletviewer 命令连接到 url 所指向的文档或资源上,并在其自身的窗口中显示文档引用的每个 applet。注意:如果 url 所指向的文档不引用任何带有 OBJECT、EMBED 或 APPLET 标记的 applet,那么 appletviewer 就不做任何事情。

命令选项:
-debug               在Java 调试器 jdb 中启动 appletviewer,使您可以调试文
档中的applet。
  -encoding        指定输入 HTML 文件的编码名称。
  -J                      将 javaoption 字符串作为单个参数传给运行 appletviewer
的Java 解释器。参数不能含有空格。由多重参数组成的字符
                       串,其中的每个参数都必须以前缀 -J 开头,该前缀以后将被
                                  除去。这在调整编译器的执行环境或内存使用时将很有用。
 
 
====================
 
HtmlConverter.exe
 
语法:HtmlConverter [-option1 value1 [-option2 value2 [...]]] [-simulate] [filespecs]
命令选项:
   -source:                   获取源文件的路径。  缺省值: <userdir>
   -dest:                     写入已转换文件的路径。  缺省值: <userdir>
   -backup:                 写备份文件的路径。  缺省值: <dirname>_BAK
   -f:                         强制覆写备份文件。
    -subdirs:                应处理子目录中的文件。
   -template:               模板文件的路径。  如果不确定,请使用缺省值。
   -log:                        写日志的路径。  如果没有提供,则不会写入任何日志。
   -progress:               转换时显示进度。  缺省值: true
   -simulate:                没有进行转换时显示特定于转换的信息。
   -latest:                     使用最新的 JRE 支持发行版 mimetype。
   -gui:                         显示转换程序的图形用户界面。
   filespecs:                 用空格分开的文件说明列表。  缺省值: "*.html *.htm"
(需要引号)
 
 
====================
 
native2ascii.exe
 
功能说明:    Java 编译器和其它 Java 工具只能处理含有 Latin-1 和/或 Unicode 编码(udddd 记号)字符的文件。native2ascii 将含有其它字符编码的文件转换成含 Latin-1 和/或 Unicode 编码字符的文件。若省略 outputfile,则使用标准输出设备输出。此外,如果也省略 inputfile,则使用标准输入设备输入。
语法:native2ascii [-reverse] [-encoding encoding] [inputfile [outputfile]]
 
命令选项:
-reverse :执行相反的操作:将含 Latin-1 和/或 Unicode 编码字符的文
件转换成含本地编码字符的文件
-encoding 指定转换过程使用的编码名称。缺省的编码从系统属性
file.encoding 中得到。encoding_name 字符串必须是下表第一栏所示的字符串。
 
程序示例:
正转:To:Unicode
     native2ascii -encoding gb2312 Native2ASCII.properties Native2ASCII_zh_CN.properties
反转:Reverse Unicode To 指定码
     native2ascii -reverse -encoding Big5 Native2ASCII_zh_CN.properties Native2ASCII_zh_TW.properties

若省略 outputfile,则使用标准输出设备输出。此外,如果也省略 inputfile,则使用标准输入设备输入。


====================  
 
rmic.exe
 
功能说明:rmic 为远程对象生成 stub 和 skeleton。


语法:rmic [ options ] package-qualified-class-name(s)


补充说明:
  rmic 编译器根据编译后的 Java 类(含有远程对象实现)名,为远程对象生成 stub 和 skeleton(远程对象是指实现 java.rmi.Remote 接口的对象)。在 rmic 命令中所给的类必须是经 javac 命令成功编译且是完全包限定的类。

命令选项
-classpath[路径]       指定 rmic 用于查询类的路径。如果设置了该选项,它将覆盖缺省值或 CLASSPATH 环境变量。目录用冒号分隔。
-d[目录]                    指定类层次的根目录。此选项可用来指定 stub 和
skeleton 文件的目标目录。
  -depend                            使编译器考虑重新编译从其它类引用的类。一般来说,它只重新编译从源代码引用的遗漏或过期的类。
-g                                       允许生成调试表格。调试表格含有行号和局部变量的有关信息,即 Java 调试工具所使用的信息。缺省情况下,只生成行号。
-J 与 -D 联用    它将紧跟其后的选项( -J 与 -D 之间无空格)传给 java
解释器。
  -keepgenerated               为 stub 和 skeleton 文件保留所生成的 .java 源文件,并将这些源文件写到与 .class 文件相同的目录中,如果要指定目录,则使用 -d 选项。
-nowarn                    关闭警告。如果使用该选项,则编译器不输出任何警告
信息。
  -show                                显示 rmic 编译器的 GUI(图形用户界面)。输入一个或多个包限定类名(以空格分隔),并按回车键或“显示”按钮,创建 stub 和 skeleton。
-vcompat                   创建与 JDK 1.1 和 1.2 stub 协议版本都兼容的 stub
和skeleton。
-verbose                   使编译器和链接器输出关于正在编译哪些类和正在加载
哪些类文件的信息。
  -v1.1                         创建 JDK 1.1 stub 协议版本的 stub 和 skeleton。
  -v1.2                         只创建 JDK 1.2 stub 协议版本的 stub。
 
 
====================
 
rmid..exe
 
功能说明:rmid 启动激活系统守护进程,以便能够在 Java 虚拟机上注册和激活对象。
 
语法:rmid [-port port] [-log dir]

补充说明:
rmid 工具启动激活系统守护进程。必须先启动激活系统守护进程,才能向激活系统注册可被激活的对象或在 Java 虚拟机上激活可被激活的对象。

命令选项:
-C<某些命令行选项>      指定一个选项,在创建每个 rmid 的子守护进程(激活组)时,该选项以命令行参数的形式传给该子守护进程。
-log[目录]                        指定目录的名称,激活系统守护进程在该目录中写入其数据库及相关信息。缺省状态下,将在执行 rmid 命令的目录中创建一个 log 目录。
-port[端口]                       指定 rmid 的注册服务程序所使用的端口。激活系统守护进程将 ActivationSystem 与该注册服务程序中的名称java.rmi.activation.ActivationSystem 捆绑在一起。
-stop                                 停止 -port 选项所指定端口上的当前 rmid 调用。若未指定端口,则将停止在端口 1098 上运行的 rmid。

====================
rmiregistry.exe
 
功能说明:rmiregistry 命令可在当前主机的指定端口上启动远程对象注册服务程序。
 
语法:rmiregistry [port]
 
补充说明:
rmiregistry 命令在当前主机的指定 port 上创建并启动远程对象注册服务程序。如果省略 port,则注册服务程序将在 1099 端口上启动。rmiregistry 命令不产生任何输出而且一般在后台运行。远程对象注册服务程序是自举命名服务。主机上的 RMI 服务器将利用它将远程对象绑定到名字上。客户机即可查询远程对象并进行远程方法调用。注册服务程序一般用于定位应用程序需调用其方法的第一个远程对象。该对象反过来对各应用程序提供相应的支持,用于查找其它对象。java.rmi.registry.LocateRegistry 类的方法可用于在某台主机或主机和端口上获取注册服务程序操作。java.rmi.Naming 类的基于 URL 的方法将对注册服务程序进行操作,并可用于查询远程对象、将简单(字符串)名称绑定到远程对象、将新名称重新绑定到远程对象(覆盖旧绑定)、取消远程对象的绑定以及列出绑定在注册服务程序上的 URL。
 

====================
 
serialver.exe
 
功能说明:serialver 命令返回 serialVersionUID。
 
语法:serialver [ 命令选项 ]
 
补充说明:       serialver 以适于复制到演变类的形式返回一个或多个类的 serialVersionUID。不带参数调用时,它输出用法行。
命令选项:
-show    显示一个简单的用户界面。输入完整的类名并按回车键或“显示”按钮
       可显示 serialVersionUID。、
 
====================
servertool.exe
 
命令选项:
register                         - 注册一个可激活的服务器
unregister                   - 取消服务器注册
getserverid                 - 返回应用程序名称的服务器标识符
list                         - 列举所有已注册服务器
listappnames                - 列举当前定义的应用程序名称
listactive                     - 列举当前活动的服务器
locate                      - 将已注册服务器定位在特定类型的端口
locateperorb                  - 为已注册服务器的特定对象请求代理程序定位端口。
orblist                      - 对象请求代理程序 (orb) 名称及其映射列表
shutdown                  - 关闭一个已注册服务器
startup                     - 启动一个已注册服务器
help                       - 取得帮助
quit                       - 退出此工具
 
 
====================
 
orbd.exe
 
语法:orbd <选项>
 
命令选项:
 -port                启动 ORBD 的激活端口,缺省值为 1049 (可选)
 -defaultdb           ORBD 文件的目录,缺省值为 "./orb.db" (可选)
 -serverid            ORBD 的服务器标识符,缺省值为 1 (可选)
 -ORBInitialPort      初始端口(必需)
 -ORBInitialHost      初始主机名称(必需)
 
 
====================
 
policytool.exe
 
语法:policytool [选项]
 
 [-file <file>]    规则文件位置
 
====================
extcheck.exe
 
功能说明:extcheck 检测目标 jar 文件与当前安装方式扩展 jar 文件间的版本冲突。
 
语法:extcheck [ -verbose ] targetfile.jar

补充说明:
  extcheck 实用程序检查指定 Jar 文件的标题和版本与 JDK TM 软件中所安装的扩展是否有冲突。在安装某个扩展前,可以用该实用程序查看是否已安装了该扩展的相同版本或更高的版本。
  extcheck 实用程序将 targetfile.jar 文件清单的 specification-title 和 specification-version 头与当前安装在扩展目录下所有 Jar 文件的相对应的头进行比较(缺省扩展目录为 jre/lib/ext)。extcheck 实用程序比较版本号的方式与 java.lang.Package.isCompatibleWith 方法相同。若未检测到冲突,则返回代码为 0。如果扩展目录中任何一个 jar 文件的清单有相同的 specification-title 和相同的或更新的 specification-version 号,则返回非零错误代码。如果 targetfile.jar 的清单中没有 specification-title 或 specification-version 属性,则同样返回非零错误代码。
命令选项:
-verbose       对扩展目录中的 Jar 文件进行检查时,列出文件。此外,还报告目标 jar 文件的清单属性及所有冲突的 jar 文件。
 
====================
jarsigner.exe
 
功能说明:为 Java 归档 (JAR) 文件产生签名,并校验已签名的 JAR 文件的签名。
 
语法: jarsigner [ 命令选项 ] jar-file alias
jarsigner -verify [ 命令选项 ] jar-file
 
补充说明:jarsigner 工具用于两个目的:
      1:为 Java 归档 (JAR) 文件签名
      2:校验已签名的 JAR 文件的签名和完整性
命令选项:
-keystore[url]                   指定密钥仓库的 URL。缺省值是用户的宿主目录中的 .keystore 文件,它由系统属性“user.home”决定。
-storetype[storetype]        指定要被实例化的密钥仓库类型。默认的密钥仓库类型是安全属性文件中 "keystore.type" 属性值所指定的那个类型,由 java.security.KeyStore 中的静态方法 getDefaultType 返回。
-storepass[password]        指定访问密钥仓库所需的口令。这仅在签名(不是校验)JAR 文件时需要。在这种情况下,如果命令行中没有提供 -storepass 选项,用户将被提示输入口令。
-keypass[password]         指定用于保护密钥仓库项(由命令行中指定的别名标出)的私钥的口令。使用 jarsigner 为 JAR 文件签名时需要该口令。如果命令行中没有提供口令,且所需的口令与密钥仓库的口令不同,则将提示用户输入它。
  -sigfile[file]                      指定用于生成 .SF 和 .DSA 文件的基本文件名。
  -signedjar[file]          指定用于已签名的 JAR 文件的名称。
  -verify                                     如果它出现在命令行中,则指定的 JAR 文件将被校验,而不是签名。如果校验成功,将显示“jar verified”。如果试图校验未签名的 JAR 文件,或校验被不支持的算法(例如未安装 RSA 提供者时使用的 RSA)签名的 JAR 文件,则将有如下显示: "jar is unsigned. (signatures missing or not parsable)" 。
-certs                                        如果它与 -verify 和 -verbose 选项一起出现在命令行中,则输出将包括 JAR 文件的每个签名人的证书信息。
-verbose                                   如果它出现在命令行中,则代表“verbose”模式,它使 jarsigner 在 JAR 签名校验过程中输出额外信息。
-internalsf                                过去,JAR 文件被签名时产生的 .DSA(签名块)文件包含一个同时产生的 .SF 文件(签名文件)的完整编码副本。这种做法已被更改。为了减小输出 JAR 文件的整个大小,缺省情况下 .DSA 文件不再包含 .SF 文件的副本。但是如果 -internalsf 出现在命令行中,将采用旧的做法。该选项主要在测试时有用;实际上不应使用它,因为这样将消除有用的优化。
-sectionsonly                           如果它出现在命令行中,则 JAR 文件被签名时生成的 .SF 文件(签名文件)将不包括含有整个清单文件的散列的头。它仅包含与 JAR 中每个单独的源文件相关的信息和散列。该选项主要在测试时有用;实际上不应使用它,因为这样将消除有用的优化。
-J[javaoption]                            将指定的 javaoption 串直接传递到 Java 解释器.
                              (jarsigner 实际上是解释器的一个“wrapper”)。该选项不应含有任何空格。它有助于调整执行环境或内存使用。要获得可用的解释器选项的清单,可在命令行键入 java -h 或 java -X。
 
 
====================
 
keytool.exe  
 
功能说明:理由私钥和认证相关公钥的 X.509 证书链组成的密钥仓库(数据库)。还管理来自可信任实体的证书。
 
语法:keytool [ 命令 ]
 
补充说明:
  keytool 是个密钥和证书管理工具。它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及认证服务。它还允许用户储存他们的通信对等者的公钥(以证书形式)。

 

JDK开发工具包文档详解与实战 在Java开发的世界中,JDK(Java Development Kit)帮助文档是所有开发者的基石。它是了解Java语言和核心类库不可或缺的资源。本章将带您入门,介绍JDK帮助文档的构成和基本使用方法。JDK帮助文档是由Oracle官方提供的,针对Java平台开发者的一套详尽参考资源。它不仅包含了Java语言规范的描述,还包括了标准类库(Java API)的详细说明。这些文档使得开发者能够快速查找如何使用类、方法和接口,而不必深入源代码中。 阅读详情

相关推荐

JDK 1.7.0_21 完整开发工具包详解

JDK 1.7.0_21 是 Oracle 在 Java 7 生命周期中发布的一个关键更新版本,发布于 2013 年 4 月。该版本不仅修复了多个潜在的安全漏洞(如 CVE-2013-1488、CVE-2013-1491 等),还增强了 Java 7 新特性的稳定性,提升了 JVM 的运行效率与安全性。它适用于企业级 Java 应用的开发与部署,是许多遗留系统升级与维护的重要选择。

weixin_26850469的博客 1157

java控制台命令

(一)            命令概览 javac:Java编译器,将Java源代码换成字节代 java:Java解释器,直接从类文件执行Java应用程序代码 appletviewer(小程序浏览器):一种执行HTML文件上的Java小程序类的Java浏览器 javadoc:根据Java源代码及其说明语句生成的HTML文档 jdb:Java调试器,可以逐行地执行程序、设置断点和检查变量

lisa890608的专栏 2099

JDK 1.7 32位官方开发工具包详解与实战配置

Java Development Kit(JDK)是Java开发的核心工具包,它不仅包含了Java运行环境(JRE),还集成了编译器(javac)、解释器(java)、调试工具和API类库,是Java程序开发与运行的基础。自Java诞生以来,JDK不断演进,其中JDK 1.7版本于2011年发布,引入了多项重要特性,如钻石操作符、try-with-resources等,极大提升了开发效率。

weixin_42601134的博客 837

Java基础知识

文章目录出题思路解答题1.Java SE是什么?Java Applet是?Java2是?Java的出生和Daddy? 出题思路   一套试卷可以是3道题,答卷+改卷时间 < 30分钟。至于错题的重复强化,可以放在三餐时间。 解答题 1.Java SE是什么?Java Applet是?Java2是?Java的出生和Daddy?   Java SE:Java Standard Edition(Java 标准版)是Java技术的核心和基础,是Java ME和Java EE编程的基础,是Java程序设计语言

soldi_er的博客 472

Java 8开发工具包:JDK 1.8新特性详解

Lambda表达式可以被看作是匿名函数的一种形式,它们使得我们可以把代码像数据一样进行传递。Lambda表达式的基本形式如下:或者这里,parameter是输入参数,->是Lambda操作符,而expression或者是表达式主体。Lambda表达式可以实现接口中定义的单一抽象方法(SAM,Single Abstract Method)。静态方法在接口中可用自Java 8起,允许接口提供一个或多个可以在不创建接口实例的情况下直接调用的方法。静态方法使用static。

weixin_35516624的博客 1204

Java开发工具包(JDK 1.8和11.0)完整学习资源

JDK,即Java Development Kit,是支持Java程序设计语言的开发环境,它提供了编译、调试及运行Java程序所需的所有工具和API。JDK不仅包括了Java运行环境(JRE),还包含了编译器(javac)、文档生成器(javadoc)和虚拟机(JVM)等关键组件。它是Java开发者工作中不可或缺的一部分,确保了应用的开发、测试和部署可以顺畅进行。

weixin_29476595的博客 869

the one的安装

#the one的安装 ##首先需要下载jdk,因为版本匹配的问题我下载了jdk-6u10-windows-x64.exe 安装时需要配置环境变量 ##安装eclipse,如果经jdk安装不成功就无法安装eclipse,所以还是要好好配置一下环境变量的 ##装好eclipse后新建java project,将one导入 ...

qq_43352906的博客 572

JDK(Java Development Kit)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序

AndroidStudio导出JavaDoc提示“目标 11 不允许选项 --boot-class-path“

AndroidStudio生成JavaDoc提示找不到Android源码中的对象,比如Context、View等 百度后配置了Android.jar(-bootclasspath /Users/dinghe/Library/Android/sdk/platforms/android-28/android.jar)包后依然出错,

记录生活中的点滴美好,活在当下! 5050

java开发工具包

一个丰富的java开发工具包,一包在手,java和jsp编程无忧。工具包包括 jdk,eclispe 32位,64位,绿色免安装,windowsbuilder插件,tomcat,绿色mysql版,sqlyog32位和64位破解版,智能提示灯文档。

java工具包 JDK1.7

java开发平台所需要的jdk工具包,jdk7是目前市场上使用较为广泛的一款,

JDK

        JDK(Java Development Kit,Java开发包,Java开发工具)是一个写Java的applet和应用程序的程序开发环境。它由一个处于操作系统层之上的运行环境还有开发者编译,调试和运行用Java语言写的applet和应用程序所需的工具组成。       JDK(Java Development Kit)是Sun Microsystems针对

KOOK_OKKO的专栏 1302

Depth Anything 3实战:如何用DINOv2 Transformer一键生成3D高斯点云?

本文详细介绍了Depth Anything 3(DA3)模型如何利用DINOv2 Transformer架构,实现从单张或多视角图像一键生成高质量3D高斯点云。DA3通过统一的深度-射线表示和自适应注意力机制,简化了传统复杂的3D重建流程,并可直接微调用于3D高斯渲染,为图形学、CV和内容创作领域提供了高效的端到端解决方案。

postgres8guard的博客 722

jdk jre jvm

很多朋友可能跟我一样,已经使用JAVA开发很久了,可是对JDK,JRE,JVM这三者的联系与区别,一直都是模模糊糊的。     今天特写此文,来整理下三者的关系。       JDK : JavaDevelopment ToolKit(Java开发工具包)。JDK是整个JAVA的核心,包括了Java运行环境(Java Runtime Envirnment),一堆Java工具(javac/ja

李度的博客 430

告别轮询!手把手教你用S32K3的FlexCAN Enhanced FIFO+DMA实现高效CAN FD数据接收

本文详细介绍了如何利用S32K3芯片的FlexCAN Enhanced FIFO与DMA组合方案,实现高效CAN FD数据接收,彻底告别传统轮询和中断模式。通过深度缓冲、智能过滤和DMA联动技术,该方案在5Mbps高负载场景下将CPU占用率从42%降至3%以下,显著提升系统实时性和吞吐量。

weixin_30906185的博客 503

知识图谱大模型系列之 12 LLM 知识图谱构建器:从零到 GraphRAG 使用 LLM 知识图谱生成器在 GenAI 应用中提取和使用知识图谱(教程含源码)

为了更深入地了解 LLM 知识图谱构建器,GitHub 存储库提供了大量信息,包括源代码和文档。此外,我们的文档提供了详细的入门指南,而GenAI 生态系统则提供了有关可用更广泛工具和应用程序的进一步见解。

iCloudEnd的博客 2037

Jdk和Jre和JVM的区别

JVM 是运行 Java 字节码的虚拟机;JRE 是 JVM 加上运行 Java 程序所需要的类库和组件;JDK 是用于开发 Java 程序的工具包,传统上包含 JRE 以及编译器、调试器等开发工具。JDK 负责开发,JRE 负责运行,JVM 负责执行字节码。不过这里有一个容易需要注意的细节:从 JDK 9 开始,JDK 的运行时镜像结构发生了变化,不能机械地理解成安装目录里一定存在一个独立的jre/子目录;现代 Java 中更准确的是从功能和组件关系理解,而不是死记目录结构。Oracle 文档。

m0_59296485的博客 164

提示工程从初级到高级:如何评估提示词的鲁棒性?架构师分享测试方法

鲁棒性(Robustness)原本是工程领域的概念,指系统在“非理想条件”下保持性能稳定的能力。输入鲁棒性:面对不规范、有噪音、格式变异的用户输入,提示能否引导模型输出正确结果?模型鲁棒性:同一提示在不同大模型(或同一模型的不同版本)下,输出是否一致?场景鲁棒性:在边界场景(极端case、歧义case、多任务混合)下,提示能否保持逻辑一致性?提示词V1:请将以下用户评论分类为「正面」「中性」或「负面」:{comment}。要求:输出唯一类别,不要额外说明。

小程序开发 496

JDK、JVM、JRE的区别

JRE是Java运行时环境,仅支持运行已编译的Java程序(.class文件)。它包含JVM和运行Java程序所需的核心类库(如java.lang、java.util等),但不包含开发工具(如编译器)。JRE适合普通用户运行Java应用程序。它提供了编译器(javac)、调试器(jdb)、文档生成器(javadoc)等开发工具,以及JRE和JVM。JVM是Java虚拟机,负责执行Java字节码(.class文件)。它是JRE的核心组件,实现了Java的跨平台特性(“一次编写,到处运行”)。

qsxxlc的博客 204

[Python] 如何使用 Python 调用 Dify 工作流服务实现自动化翻译

本文介绍了如何使用Python调用Dify的API实现文本翻译自动化。Dify作为AI开发平台,其工作流功能可执行文本处理、翻译等任务。选择Python调用Dify的优势在于职责划分清晰:Dify专注AI服务,Python处理文件操作等非AI任务。

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 1097

用 Message Monitoring Overview 打造接口健康驾驶舱:SAP AIF 消息监控实战解析

究竟解决了什么痛点?概括起来,这个应用把SAP AIF的接口监控,从传统的事务码和技术视角,带到了一个更加直观、业务友好的层次:(通过卡片式总览,让你在一个页面上看到所有自己负责的接口及其健康状况。通过和的联动,实现了从接口态势到具体消息的快速钻取。通过Recipient模型和应用,实现了监控职责的灵活分配。借助拖拽排序、搜索过滤等特性,让每个运维人员都可以打造属于自己的接口健康 cockpit。如果你正在做S/4HANA或项目,无论是公有云还是本地部署,只要系统启用了SAP AIF。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 107

如何理解JDK,JRE以及JVM之间的关系

1.JDK:jdk中文名叫java开发工具包,包含了java程序设计语言,jvm,java类库,jdk是用于支持java程序开发的最小环境 2.JRE

qq_42939235的博客 196

Deepseek Engram 论文全面解读

以下是对 DeepSeek 与北京大学于联合发布的论文《》(简称Engram 论文)的。

lpfasd123的博客 357
上一篇: 在Eclipse中使用JUnit4进行单元测试(高级篇)
下一篇: JDK中的动态代理之一
lhminjava
博客等级 码龄21年 15粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值