Java Tools &Tools APIs

一、java

启动Java应用程序

二、javac

Java编译器javac读取用Java编写的源文件,并将它们编译为字节码类文件。

用法: javac <options> <source files>
其中, 可能的选项包括:
  -g                         生成所有调试信息
  -g:none                    不生成任何调试信息
  -g:{lines,vars,source}     只生成某些调试信息
  -nowarn                    不生成任何警告
  -verbose                   输出有关编译器正在执行的操作的消息
  -deprecation               输出使用已过时的 API 的源位置
  -classpath <路径>            指定查找用户类文件和注释处理程序的位置
  -cp <路径>                   指定查找用户类文件和注释处理程序的位置
  -sourcepath <路径>           指定查找输入源文件的位置
  -bootclasspath <路径>        覆盖引导类文件的位置
  -extdirs <目录>              覆盖所安装扩展的位置
  -endorseddirs <目录>         覆盖签名的标准路径的位置
  -proc:{none,only}          控制是否执行注释处理和/或编译。
  -processor <class1>[,<class2>,<class3>...] 要运行的注释处理程序的名称; 绕过默认的搜索进程
  -processorpath <路径>        指定查找注释处理程序的位置
  -parameters                生成元数据以用于方法参数的反射
  -d <目录>                    指定放置生成的类文件的位置
  -s <目录>                    指定放置生成的源文件的位置
  -h <目录>                    指定放置生成的本机标头文件的位置
  -implicit:{none,class}     指定是否为隐式引用文件生成类文件
  -encoding <编码>             指定源文件使用的字符编码
  -source <发行版>              提供与指定发行版的源兼容性
  -target <发行版>              生成特定 VM 版本的类文件
  -profile <配置文件>            请确保使用的 API 在指定的配置文件中可用
  -version                   版本信息
  -help                      输出标准选项的提要
  -A关键字[=值]                  传递给注释处理程序的选项
  -X                         输出非标准选项的提要
  -J<标记>                     直接将 <标记> 传递给运行时系统
  -Werror                    出现警告时终止编译
  @<文件名>                     从文件读取选项和文件名

三、javadoc

Javadoc是一个工具,它解析一组源文件中的声明和文档注释,并生成一组描述类,接口,构造函数,方法和字段的HTML页面。

四、jar

JAR(Java Archive)是一种独立于平台的文件格式,可将多个文件聚合为一个文件。多个Java小程序及其必需组件(.class文件,图像和声音)可以捆绑在一个JAR文件中,然后在单个HTTP事务中下载到浏览器中,从而大大提高了下载速度。JAR格式还支持压缩,这可以减小文件大小,进一步缩短下载时间。此外,applet作者可以对JAR文件中的各个条目进行数字签名,以验证其来源。它是完全可扩展的。

五、javap

反汇编一个或多个类文件。

用法: javap <options> <classes>
其中, 可能的选项包括:
  -help  --help  -?        输出此用法消息
  -version                 版本信息
  -v  -verbose             输出附加信息
  -l                       输出行号和本地变量表
  -public                  仅显示公共类和成员
  -protected               显示受保护的/公共类和成员
  -package                 显示程序包/受保护的/公共类
                           和成员 (默认)
  -p  -private             显示所有类和成员
  -c                       对代码进行反汇编
  -s                       输出内部类型签名
  -sysinfo                 显示正在处理的类的
                           系统信息 (路径, 大小, 日期, MD5 散列)
  -constants               显示最终常量
  -classpath <path>        指定查找用户类文件的位置
  -cp <path>               指定查找用户类文件的位置
  -bootclasspath <path>    覆盖引导类文件的位置

查看 .class 反编译文件

Javap -v xx.class

七、jdeps

Java类依赖性分析器。

八、常用Debug指令

jps

查看Java进程, (java 的 ps命令)

jconsole

A JMX-compliant graphical tool for monitoring a Java virtual machine. It can monitor both local and remote JVMs. It can also monitor and manage an application.
(兼容JMX的图形工具,用于监视Java虚拟机。 它可以监视本地和远程JVM。 它还可以监视和管理应用程序。)

jstat

查看内存
Monitors Java Virtual Machine (JVM) statistics. This command is experimental and unsupported.
(监控Java虚拟机(JVM)的统计数据。这个命令是经验性的和不支持的。)

doc jstat

jstack

Stack Trace for Java - Prints a stack trace of threads for a given process or core file or remote debug server.
Prints Java thread stack traces for a Java process, core file, or remote debug server. This command is experimental and unsupported.
(打印Java进程,核心文件或远程调试服务器的Java线程堆栈跟踪。此命令是实验性的,不受支持。)

doc jstack

jmap

主要是-dump 下载信息到文件中,使用专门的图形化工具查看

Prints shared object memory maps or heap memory details for a process, core file, or remote debug server. This command is experimental and unsupported.
(打印进程,核心文件或远程调试服务器的共享对象内存映射或堆内存详细信息。此命令是实验性的,不受支持。)

doc jmap

查看堆栈信息

更多指令

posted @ 2018-11-08 09:42  小鸣的微笔记  阅读(...)  评论(... 编辑 收藏