Java9及更高版本工具和命令参考
Java9工具和命令参考
JDK工具及其命令使开发人员能够处理开发任务,例如编译和运行程序,将源文件打包到Java Archive (JAR)文件中,将安全策略应用到JAR文件中,等等。
工具和命令参考主题列出和描述了JDK (Java Development Kit)工具。根据它们执行的相关功能,将它们分为以下几个部分。有关工具和用于运行它们的命令的详细信息包含在本指南的相应部分中。
官网地址:
https://docs.oracle.com/javase/9/tools/tools-and-command-reference.htm
主要工具
下面的基础工具和命令可以让你创建和构建应用程序:
- javac:您可以使用javac工具及其选项读取Java类和接口定义,并将它们编译成字节码和类文件。
- javap:使用javap命令来反汇编一个或多个类文件。
- javah:使用javah工具从Java类生成C头文件和源文件。
- javadoc:使用javadoc工具及其选项从Java源文件生成API文档的HTML页面。
- java:可以使用java命令启动java应用程序。
- appltviewer:使用appltviewer命令启动appltviewer并在web浏览器外运行applet。
- jar:您可以使用jar命令为类和资源创建存档,并从存档中操作或恢复单个类或资源。
- jlink:您可以使用jlink工具将一组模块及其依赖项组装并优化到自定义运行时映像中。
- jmod:使用jmod工具创建jmod文件并列出现有jmod文件的内容。
- jdeps:使用jdeps命令启动Java类依赖分析器。
- jdeprscan:将jdeprscan工具用作静态分析工具,它扫描jar文件(或其他类文件的聚合),以查找已弃用的API元素。
Java语言工具
下面的工具为您提供了一个交互式环境来尝试使用Java语言:不用启动idea即可写Java代码
- jshell:在读取-求值-输出循环(REPL)中交互式地评估Java编程语言的声明、语句和表达式
安全工具
以下安全工具可在您的系统上设置安全策略,并创建可在远程站点设置的安全策略范围内工作的应用程序:
- keytool:使用keytool命令和选项来管理加密密钥、X.509证书链和受信任证书的密钥存储库(数据库)。
- jarsigner:使用jarsigner工具对Java Archive (JAR)文件进行签名和验证。
- policytool:使用policytool根据用户通过实用工具GUI输入的内容读写纯文本策略文件。【Java 11被删除】
以下工具在Windows上获取、列出和管理Kerberos票据:
- kinit:使用kinit工具及其选项来获取和缓存Kerberos票据授予票据。
- klist:使用klist工具显示本地凭据缓存和密钥表中的条目。
- ktab:使用ktab工具管理存储在本地键表中的主体名称和服务键。
远程方法调用(RMI)工具
以下工具支持创建通过Web或其他网络进行交互的应用程序:
- rmic:使用rmic编译器为远程对象使用Java远程方法协议(JRMP)和存根类文件(IIOP协议)生成存根和骨架类文件。
- rmiregistry:使用rmiregistry命令在当前主机的指定端口上创建并启动远程对象注册表。
- rmid:使用rmid命令启动激活系统守护进程,该守护进程允许在Java虚拟机(JVM)中注册和激活对象。
- serialver:使用serialver命令返回一个或多个类的serialVersionUID,其形式适合复制到一个演化类中。
Java IDL和RMI-IIOP工具
以下工具支持创建使用omg标准IDL和CORBA/IIOP的应用程序:
- tnameserv:使用tnameserv命令代替对象请求代理守护进程(Object Request Broker Daemon, ORBD)。【Java 11中被删除】
- idlj:使用idlj命令为指定的接口定义语言(IDL)文件生成Java绑定。【Java 11中被删除】
- orbd:在CORBA环境中,客户端使用orbd命令来透明地定位和调用服务器上的持久对象。【Java 11中被删除】
- servertool:使用servertool命令行工具来注册、注销、启动和关闭持久服务器。【Java 11中被删除】
Java部署工具
以下工具可以让你在web上部署Java应用程序和小程序:
- pack200:使用pack200命令使用Java gzip压缩器将Java Archive (JAR)文件转换为压缩后的pack200文件。【Java 11中被标记为过时】
- unpack200:使用unpack200命令将打包的文件转换为用于web部署的JAR文件。【Java 11中被标记为过时】
- javapackager:使用javapackager命令执行与打包Java和JavaFX应用程序相关的任务。【Java 11中被删除】
Java Web Start
下面的工具可以启动Java Web Start应用程序:
- javaws:使用javaws工具命令及其选项启动Java Web start。【Java 11中被删除】
监控工具
以下工具允许您监视性能统计数据:
注意:
以下被确定为实验性的工具是不受支持的,应该在理解的情况下使用。它们可能在未来的JDK版本中不可用。
- jconsole:使用jconsole命令启动一个图形控制台来监视和管理Java应用程序。
- jps:实验性的使用jps命令列出目标系统上已检测的jvm。
- jstat:实验性使用jstat命令监视JVM统计信息。该命令是实验性的,可能在后期版本中不受支持。
- jstatd:实验性的使用jstatd命令监视已检测Java HotSpot虚拟机的创建和终止。该命令是实验性的,可能在后期版本中不受支持。
- jmc:使用jmc命令及其选项启动Java任务控制。Java Mission Control是一个分析、监视和诊断工具套件。【Java11中被删除】
Java Web服务工具
以下工具允许您创建提供web服务的应用程序:
- schemagen:您可以使用schemagen工具和命令为Java类中引用的每个名称空间生成模式。【Java 11中被删除】
- wsgen:使用wsgen命令为JAX-WS Web服务中使用的XML Web服务(JAX-WS)可移植构件生成Java API。【Java 11中被删除】
- wsimport:使用wsimport命令为XML Web服务(JAX-WS)可移植工件生成Java API。【Java 11中被删除】
- xjc:使用xjc shell脚本将XML模式文件编译为带有完全注释的Java类。【Java 11中被删除】
Java辅助工具
下面的工具可以让你检查Java对象的可访问性:
- jaccessinspector:您使用Java accessibility Utilities API的jaccessinspector可访问性评估工具来检查Java虚拟机中对象的可访问信息。
- jaccesswalker:使用jaccesswalker导航特定Java虚拟机中的组件树,并在树视图中呈现层次结构。
故障诊断/排除工具
以下工具可让您执行特定的故障排除任务:
注意:
以下被确定为实验性的工具是不受支持的,应该在理解的情况下使用。它们可能在未来的JDK版本中不可用。其中一些工具目前在Windows平台上不可用。
- jcmd:使用jcmd实用程序向正在运行的Java虚拟机(JVM)发送诊断命令请求。
- jdb:使用jdb命令和它的选项来查找和修复Java平台程序中的错误。
- jhsdb:使用jhsdb工具附加到Java进程或启动一个事后调试器,以分析来自崩溃的Java虚拟机(JVM)的核心转储的内容。
- 使用jinfo命令为指定的Java进程生成Java配置信息。该命令是实验性的,可能在后期版本中不受支持。
- 使用jmap命令打印指定进程的详细信息。该命令是实验性的,可能在后期版本中不受支持。
- 使用jstack命令打印指定Java进程的Java线程的Java堆栈跟踪。该命令是实验性的,可能在后期版本中不受支持。
脚本工具
下面的工具可以让你运行与Java平台交互的脚本:
注意:
以下被确定为实验性的工具不受支持,应在理解后使用。它们可能在未来的JDK版本中不可用。
- jjs:使用jjs命令行工具调用Nashorn引擎。
- jrunscript:使用jrunscript命令运行一个支持交互和批处理模式的命令行脚本shell。
java17工具和命令参考【java17最终版】
官方文档:
https://docs.oracle.com/en/java/javase/17/docs/specs/man/index.html
所有平台系统中都有java工具
- jar -为类和资源创建存档,并从存档中操作或恢复单个类或资源
- jarsigner -签名和验证Java Archive (JAR)文件
- java -启动一个java应用程序
- javac -读取Java类和接口定义并将它们编译成字节码和类文件
- javadoc - 从Java源文件生成API文档的HTML页面
- javap -反汇编一个或多个类文件
- jcmd---向正在运行的Java虚拟机(JVM)发送诊断命令请求
- jconsole -启动一个图形控制台来监视和管理Java应用程序
- jdb - 查找和修复Java平台程序中的错误
- jdeprscan - 静态分析工具,用于扫描jar文件(或其他类文件的聚合),以查找已弃用的API元素【升级jdk版本需要用到】
- jdeps - 启动Java类依赖分析器【升级jdk版本需要用到】
- jfr - 解析和打印飞行记录文件
- jhsdb - 附加到Java进程或启动事后调试器,以分析来自崩溃的Java虚拟机(JVM)的核心转储的内容。
- jinfo - 为指定的Java进程生成Java配置信息
- jlink - 组装和优化一组模块及其依赖关系到一个自定义的运行时映像
- jmap - 打印指定进程的详细信息
- jmod -创建jmod文件并列出现有jmod文件的内容
- jpackage - 打包一个独立的Java应用程序
- jps -列出目标系统上已检测的jvm【每一个Java进程都有一个独立的jvm】
- Jrunscript - 运行一个命令行脚本shell,支持交互和批处理模式
- jshell - 写Java代码的命令行shell 窗口
- jstack - 打印指定Java进程的Java线程的Java堆栈跟踪
- jstat -监控JVM统计信息
- jstatd---监控已安装在Java HotSpot虚拟机的创建和终止
- keytool---管理加密密钥、X.509证书链和受信任证书的密钥库(数据库)
- rmid - 启动激活系统守护进程,使对象能够在Java虚拟机(JVM)中注册和激活。
- rmiregistry - 在当前主机的指定端口上创建并启动远程对象注册表
- serialver -以适合复制到进化类的形式为一个或多个类返回' serialVersionUID '
只在window系统中有的java工具
- jabswitch -启用或禁用Java访问桥
- jaccessinspector------使用Java Accessibility Utilities API检查Java虚拟机中对象的可访问信息
- jaccesswalker------浏览特定Java虚拟机中的组件树,并在树视图中呈现层次结构
- javaw - 启动一个没有控制台窗口的Java应用程序
- kinit---获取并缓存Kerberos票据授予票据
- Klist -显示本地凭据缓存和密钥表中的条目
- ktab - 管理存储在本地密钥表中的主体名称和服务密钥