Java的开发人员肯定都知道JDK的bin目录中有“java.exe”和“javac.exe”这两个命令行工具,

但并非所有的Java程序员都了解过JDK的bin目录之中其它命令行程序的作用。
JDK1.6自带的工具就有42个之多。
 
   环境说明:操作系统 win7,JDK1.6
 bin目录的42个工具如图所示

  
常用的9种程序

1.javac.exe: Java编译器, 将Java源代码转换成字节码。

2.java.exe: Java解释器, 直接从class文件或者jar包执行Java应用程序代码。

 
3.jre.exe: 类似于Java解释器, 但是并不需要Java.exe所有与Java开发相关的选项。

4.appletviewer.exe: 小程序浏览器, 一种执行HTML文件上的Java小程序的Java浏览器。
5.javadoc.exe: 根据Java源码及说明语句生成HTML文档。

6.jdb.exe:Java调试器,可以逐行执行程序,设置断点和检查变量。
7.javah.exe:产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的头文件。

8.javap.exe:Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代码含义。

9.jar.exe:将Java类文件和其他资源文件捆绑成一个一的jar文件

其他程序

10.apt.exe :SolarisTM 操作系统和 Linux上用于处理注释的工具

11.extcheck.exe: extcheck 检测目标 jar 文件与当前安装方式扩展 jar 文件间的版本冲突。

12.htmlConverter.exe : Java插件 HTML 转换器是一种实用程序,可用于将任一包含小程序的 HTML 页面,转换为使用 Java插件的格式。

13.idlj.exe : 对idl文件进行解析,生成所需的java文件

14.jarsigner.exe: 为 Java 归档 (JAR) 文件产生签名,并校验已签名的 JAR 文件的签名

15.java-rmi: Java远程方法调用。即Java RMI(Java Remote Method Invocation)是Java编程语言里,一种用于实现远程过程调用的应用程序编程接口。它使客户机上运行的程序可以调用远程服务器上的对象。远程方法调用特性使Java编程人员能够在网络环境中分布操作。RMI全部的宗旨就是尽可能简化远程接口对象的使用。

16.javaws:用于启动和控制Web上的java是程序

17.jconsole:是一个基于JMX的GUI工具,用于连接正在运行的JVM,不过此JVM需要使用可管理的模式启动。

18.jhat:是一个Java堆复制浏览器。这个工具分析Java堆复制文件(例如,由上面的"jmap -dump"所产生的)。Jhat启动一个允许堆中的对象在web浏览器中进行分析的web服务器。这个工具并不是想用于应用系统中而是用于"离线"分 析。"jhat工具是平台独立的",其意思是,它可以被用来观察在任何平台上所产生的堆复制。例如,我们有可能在Linux系统上使用jhat来观察一个 在Solaris OS上所产生的堆复制。

19.jinfo:打印一个给定的Java进程或核心文件或一个远程调试服务器的Java配置信息。配置信息包括Java系统属性和JVM命令行标志

20.jrunscript:一个JS解释器

21.jstack:等价于Solaris的pstack工具。jstack打印所有的Java线程的堆栈跟踪信息(可选地包括本机帧信息)

22.jstat :显示一个测量(instrumented)Java HotSpot虚拟机的性能统计信息

23.jstatd:是一个Java远程方法调用 (RMI)服务器应用程序-它监控测量Java HotSpot虚拟机的创建和终止并且提供一个接口来允许远程监控工具依附到运行于本地主机的JVM

24.keytool:是安全钥匙与证书的管理工具,它管理一个存储了私有钥匙和验证相应公共钥匙的与它们相关联的X.509 证书链的keystore

25.kint,klist,ktab:实现Kerberos用到的一些工具

26.native2ascii:用于转换字符或者文件的编码格式

27.orbd:用于实现corba接口(分布式应用)

28.pack200:对jar文件进行高效的压缩

29.packager: 将Jar文件包装成其他格式的文件

30.policytool:java中的策略管理

31.rmic:为远程调用编译生成远程调用时所需的文件

32.rmid:用于启动激活系统守护进程,以便远程对象可以在JVM中注册和激活

33.rmiregistry:启动一个远程对象注册表中指定的端口

34.schemagen: 命令行工具,可以根据表示 Java 应用程序的数据元素的现有 Java 应用程序来创建 XML 模式文档

35.serialver:用于返回一个类的serialverUID

36.servertools:为程序员提供了一个命令行接口,用于注册,取消注册,启动,关闭一个服务
  
37.tnameserv:提供了访问命名服务。

38.unpack200:对pack200进行压缩的jar文件进行解压

39.wsgen:是一个命令行功能用来生成合适的JAX-WS。它读取WebService的终端类文件,同时生成所有用于WebService发布的源代码文件和经过编译过的二进制类文件。它还随意生成WSDL和符合规范的HelloServer类WebService。wsgen从资源文件生成一个完整的操作列表是合法的。

40.wsimport:这个工具依据wsdl文件生成相应的类文件,然后用这些类文件,就可以像调用本地的类一样调用WebService提供的方法了


41.jps:相当于Solaris进程工具ps。不象"pgrep java"或"ps -ef grep java",jps并不使用应用程序名来查找JVM实例。因此,它查找所有的Java应用程序,包括即使没有使用java执行体的那种(例如,定制的启动 器)。另外,jps仅查找当前用户的Java进程,而不是当前系统中的所有进程。
 
42.jmap:Java内存映像工具
 
参考资料:JDK1.6工具目录,网络资料整理
 
本文最早发表于我的QQ空间,2012年4月22日。2013年10月27日更新。
 

[置顶] JDK工具(零)--简要介绍JDK1.6自带的42个工具的更多相关文章

  1. JDK工具(零)--简要介绍JDK1.6自带的42个工具

    Java的开发人员肯定都知道JDK的bin目录中有"java.exe"和"javac.exe"这两个命令行工具, 但并非所有的Java程序员都了解过JDK的bi ...

  2. [置顶] JDK工具(一)–Java编译器javac

    1.概述    javac.exe: Java编译器,将Java源代码转换成字节码. 2.用法    javac <选项> <源文件> (使用过程中发现,javac <源 ...

  3. 简要介绍Apache、php、mysql安装和工具介绍

    1 安装Apache 网站:www.Apache.org下载相应的Apache,目前下载了近期的:httpd-2.2.15-win32-x86-openssl-0.9.8msi 安装简要步骤如下图: ...

  4. [置顶] JAVA从零单排4-----继承、封装和多态详解

    继承 Java三大特征之一:继承.Java的继承具有单继承的特点,每个子类只能有一个直接父类. 继承的特点 Java的继承用extends关键字来实现,被继承的类成为父类,实现继承的类被称为子类.子类 ...

  5. [置顶] LLVM每日谈之十五 LLVM自带的examples

    作者:snsn1984 在LLVM源码的目录下,有一个目录叫做examples,这个目录下边有几个LLVM的例子,初学者一般不会太关注这些例子,但是这些例子确实是精华中的精华,在LLVM的学习过程中不 ...

  6. 性能测试学习第二天_性能测试工具概述Loadrunner介绍

    性能测试工具概述Loadrunner介绍 http://www.51testing.com/html/42/n-6542.html 其中,T直接影响用户体验时间 性能测试的原理: 记录一个访问过程的通 ...

  7. sqlserver自带的导入导出工具,分别导入大批量mysql和oracle数据时的感受

    sqlserver自带的导入导出工具,分别导入大批量mysql和oracle数据时,mysql经常出现格式转换出错,不好导入  导入的数据量比较大时,还不如自己写个工具导入 今天在导oracle时,想 ...

  8. JDK 6 目录结构介绍以及JDK中的工具研究

     要想深入了解Java必须对JDK的组成, 本文对JDK6里的目录做了基本的介绍,主要还是讲解 了下JDK里的各种可执行程序或工具的用途 Java(TM) 有两个平台 JRE 运行平台,包括Jav ...

  9. 十二、jdk工具之jcmd介绍(堆转储、堆分析、获取系统信息、查看堆外内存)

    目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk ...

随机推荐

  1. openCV训练程序申请内存不足

     openCV训练程序申请内存不足   在用OpenCV训练分类器(特别是训练Adaboost类型的分类器)的时候,当样本的数量特别大的时候,就会出现申请内存不够的情况,很早以前碰到过这样的情况,最近 ...

  2. Python全栈开发之3、数据类型set补充、深浅拷贝与函数

    转载请注明出处http://www.cnblogs.com/Wxtrkbc/p/5466082.html 一.基本数据类型补充 set是一个无序而且不重复的集合,有些类似于数学中的集合,也可以求交集, ...

  3. 【转】使用 python IDLE 自带的 debuger 进行调试

    IDLE自带了调试器(虽然不怎么使吧). 关于如何在 IDLE 中进行调试网上的教程讲的很模糊,于是自己整理了一下,和大家分享~ 第一步:打开python shell,并在shell中打开debuge ...

  4. SCU 4442 Party

    二分图的最小点权覆盖. 非常感谢巨巨@islands_的解答,还帮我画了一个图. 题目保证给出的边构成的图是一个二分图. 如果没有第三种类型的$frog$,那么问题就很简单了.即选择哪些点,覆盖住所有 ...

  5. java 简单类

    package 面向对象编程_封装性; //1.类名称必须存在有意义,例如Book.Emp //2.类之中所有的属性必须用private封装,封装后的属性必须提供有setter和getter方法 // ...

  6. XamarinForms教程构建XamarinForms开发环境

    构建XamarinForms开发环境 所谓Xamarin.Forms的开发环境,就是指在基本硬件和数字软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE.对于任何的程 ...

  7. ddms 安卓录制

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 屏幕录制, 视频录制 保存为 .   打开 .显示在浏览器里. 设备屏幕捕捉     刷 ...

  8. Tsinsen 拉拉队排练

    建回文树,然后判断长度奇偶性,统计下来排序即可. 题目链接:http://www.tsinsen.com/ViewGProblem.page?gpid=A1255 By:大奕哥 #include< ...

  9. Codeforces 650 D. Zip-line

    $ >Codeforces \space 650 D. Zip-line<$ 题目大意 : 有一个长度为 \(n\) 的序列 \(h\) ,\(m\) 次询问,每一次询问求如果把序列中第 ...

  10. 网络流小结+[jzyzoj p1320] patrol

    一个不能更清楚的网络流介绍 ↑虽然不是我写的但是观摩一下总是没问题的嗯   看到晗神学的是神奇的ek算法. 但是看起来还是Ford-Fulkerson比较简单..所以我就学了这个...嗯其他的先看看. ...