JAVA_HOME/bin下的各个命令和Tools.jar包

在JAVA_HOME/lib文件夹下有个tools.jar文件,在jdk1.7.0_67版本里这个类接近15M。料还是很足的。那这个类是干啥的来,这个类就是JDK bin目录下的所有命令的具体的Java实现。

tools所在的层次可以看下面这个图,图片来自https://docs.oracle.com/javase/8/docs/index.html


下面的内容是https://docs.oracle.com/javase/7/docs/technotes/tools/index.html这个页面的翻译。

对每个命令做个简单的介绍,具体的细节在该页面每个命令的链接里有,感兴趣的可以查看。

General Information

下面的文档包含你获取更多的JDK tools的信息需要知道的重要信息。

Document Type

Platform

JDK File Structure

[Solaris, Linux, and OS X] [Windows]

Setting the Classpath

[Solaris, Linux, and OS X] [Windows]

How Classes are Found

[All supported platforms]

Enhancements

Basic Tools

下面这些工具是JDK的基础。这些工具是用来创建和构建应用程序用的。

Appletviewer 不使用web浏览器直接运行或者调试applet程序

Extcheck 检测Jar包冲突的工具

Jar 创建和管理Java归档文件

Java java应用程序启动器。开发环境和生产环境都使用这个。jre命令废弃了。

Javac java程序语言编译器

Javadoc API文档生成器

Javah C头文件和stub生成器。用来写本地的方法。

Javap 类文件反汇编程序。

Jdb java调试器

Jpeps java类依赖分析器

Security Tools

这些安全工具帮助你设置系统和应用的安全策略。

Keytool 管理keystore和证书

Jarsigner 生成和验证jar文件的签名

Policytool 管理策略工具的GUI工具

下面这些工具帮助你获取,显示和管理Kerberos票据。

Kinit 获取Kerberos票据的工具。

Klist 显示证书缓存和Key Table中的条目

Ktab 帮助用户管理key table中的条目的命令行工具

Internationalization Tools

这个工具帮助你创建本地化的应用程序。

Native2ascii 将文本转为Unicode Latin-1格式

Remote Method Invocation(RMI)Tools

这些工具帮助你创建通过web或者其他网络交互的应用程序。

Rmic 为远程的对象生成stub和skeleton

Rmiregistry 远程对象的注册服务

Rmid 激活RMI的系统守护进程

Serialver 返回一个类的serialVersionUID

Java IDL and RMI-IIOP Tools

创建使用OMG-standard IDL和CORBA/IIOP的应用程序的时候使用。

tnameserrv 提供名字服务的访问方式

idlj 生成OMG IDL接口对象的.java文件,使一个用Java程序语言编写的应用程序使用CORBA的函数

orbd 为客户端透明的定位和调用一个CORBA服务器环境中持久化了的对象提供支持。ORBA用来代替瞬时命名服务(Transient Naming Service),tnameserv。ORBD包含一个瞬时命名服务和一个持久命名服务。Orbd工具统一一个Server管理的两个功能,一个彼此写作的命名服务,和一个引导名字服务器。当与servertool一起使用时,如果一个客户端享访问服务器,可以使用Server管理器定位,注册和激活一个服务器。

servertool 为应用程序编写者提供一个注册,注销,启动和关闭一个server的易用的接口

Java Deployment Tools

部署Java应用程序和applet相关的工具。

Javapackager 执行打包应用程序和签名Java和JavaFx应用程序相关的工作。

Pack200 使用java的gzip压缩器将一个Jar文件转换为一个压缩的pack200文件。压缩之后的打包文件是高压缩率的JAR文件,可以直接被部署,节省宽带,减少下载时间。

Unpack200 将一个用pack200打包的文件转为一个Jar文件

Java Web Start Tools

Java Web 安装相关的命令。

Javaws 启动一个Java Web的安装和设置各种选项的命令行工具。

Java Troubleshooting,Profiling,Monitoringand Management Tools

Jconsole 一个符合JMX规范的图形化工具,可以用来监控Java虚拟机。可以监控本地和远程的JVM。也可以监控和管理一个应用程序。

Java Web Services Tools

Schemagen Schema生成器

Wsgen 生成JAX-WS可移植的构建的工具

Wsimport 生成JAX-WS可一直的构建的工具

Xjc 绑定XML的Java架构的编译器

Monitoring Tools

你可以使用下面的工具来监控JVM的性能。下面描述的工具都是未证实的,实验性的。在将来的JDK版本中可能不再可用。

这些工具支持除了window98和windows me之外的所有的平台。

Jcmd 实验性的:JVM诊断命令工具。发送一个诊断命令请求给一个JVM。

Jps   实验性的:JVM进程状态工具-列出目标系统中被监测的HotSpot虚拟机。

Jstat 实验性的:JVM统计监控工具-附加到一个被监测的HotSpotJVM中,然后收集和记录命令行中指定的性能统计数据。

Jstatd 实验性的:JVM jstat守护进程。启动一个RMI服务器应用程序,监控被监测的HotSpot JVM的创建和终止。提供一个接口允许远程监控工具附加到本地正在运行的JVM中。

Troubleshooting Tools

下面这些工具用来执行特定的troubleshooting工作。下面的工具事实上是未证实的,实验性的。在将来的版本中可能不在可用。下述的有些工具目前在window平台中不可用。

Jinfo 实验性的:Java的配置信息。打印给定进程或者核心文件或者一个远程调试服务器的配置信息。

Jhat 实验性的:堆栈转储浏览器。在堆栈转储文件上启动一个web服务器(例如,jmap -dump),允许堆栈被浏览。

Jmap 实验性的:Java的内存映射。打印共享的对象内存映射或者给定进程、核心文件和远程调试服务器的堆栈内存细节。

Jsadebugd 实验性的:可靠性。Java的代理调试守护进程。附加到一个进程、核心文件或者作为一个调试服务器。

Jstack 实验性的。Java堆栈跟踪。打印一个给定的进程中一个线程、核心文件或者远程调试服务器的堆栈。

Scripting Tools

下面这些工具用来与运行可以与java平台交互的脚本。

Jjs 运行Nashorn命令行脚本的shell

Jrunscript 实验性的:Java脚本的Shell。运行一个脚本。这个工具事实上是未证实的,实验性的。在将来的JDK版本中可能不在可用。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。