java基础-jdk工具包

时间:2022-09-10 17:28:04

1. 标准工具

这些工具都是JDK提供的,通常都是长期支持的工具,JDK承诺这些工具比较好用。不同系统、不同版本之间可能会有差异,但是不会突然就有一个工具消失。

1.1 基础包 (extcheck, jar, java, javac, javadoc, javap)

工具 简述 常用命令
javac 编译.java源文件 javac hello.java
java 运行.class字节码或.jar文件 java hello.class, java -jar my.jar
jar 创建和管理Jar文件 jar -cvf my.jar .\*
javadoc API文档生成器 javadoc hello.java 生成html文档
javap 根据Java字节码反编译为Java源代码 javap hello.class
jdb Java调试器(Java Debugger)

1.2 故障排查,分析,监控和管理 (jcmd, jconsole, jmc, jvisualvm)

工具 简述 常用命令
jcmd 发送诊断命令到JVM jcmd
jconsole 监控本地和远程jvm的图形工具 jconsole
jvisualvm 查看java程序信息 jvisualvm

jcmd命令

查看进程 jcmd -l

命令:jcmd -l

描述:查看 当前机器上所有的 jvm 进程信息

jcmd
jcmd -l
jps

查看性能统计 jcmd pid PerfCounter.print

命令:jcmd pid PerfCounter.print

描述:查看指定进程的性能统计信息。

列出当前运行的 java 进程可以执行的操作 jcmd PID help

命令:jcmd PID help

查看具体命令的选项 jcmd 11772 help JFR.dump

如果想查看命令的选项,比如想查看 JFR.dump 命令选项,可以通过如下命令:

jcmd 11772 help JFR.dump

通知垃圾回收 jcmd PID GC.run

命令:jcmd PID GC.run

描述:对 JVM 执行 java.lang.System.gc()

告诉垃圾收集器打算进行垃圾收集,而垃圾收集器进不进行收集是不确定的。

强制垃圾回收 jcmd PID GC.run_finalization

命令:jcmd PID GC.run_finalization

描述: 对 JVM 执行 java.lang.System.runFinalization()

执行一次finalization操作,相当于执行java.lang.System.runFinalization()




jconsole工具使用

jconsole介绍

  • Jconsole是JDK自带的监控工具,在JDK/bin目录下可以找到。
  • 它用于连接正在运行的本地或者远程的JVM,对运行在java应用程序的资源消耗和性能进行监控,并画出大量的图表,提供强大的可视化界面。而且本身占用的服务器内存很小,甚至可以说几乎不消耗。
  • 从命令行直接输入jconsole,打开客户端

jvisualvm工具

jvisualvm介绍

  • VisualVM,能够监控线程,内存情况,查看方法的CPU时间和内存中的对象,已被GC的对象,反向查看分配的堆栈(如100个String对象分别由哪几个对象分配出来的).
  • 从命令行直接输入jvisualvm,打开客户端

参考:

java基础-jdk工具包的更多相关文章

  1. Java 基础 - JDK 和 JRE 有什么区别

    总结 JRE(Java Runtime Environment),就是 Java 运行环境,包括JVM虚拟机(java.exe等)和基本的类库(rt.jar等). JDK (Java Developm ...

  2. Java基础--JDK的安装和配置

    一.Java平台简述 1.1 Java语言简介 Java是一门面向对象的编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承.指针等概念,因此Java语言具有功能强大和简单易用两 ...

  3. 七、Java基础---------JDK安装与配置

    配置环境变量名词说明 path:通过path系统去寻找可执行的java文件. JAVA_HOME:JDK的安装目录 classpath:加载目录 为什么需要配置path,什么时候需要classpath ...

  4. java基础---JDK、JRE、JVM的区别和联系

    当我们学习java语言时,首先需要安装到我们电脑上的就是jdk.jdk是java语言的开发环境,只有安装了jdk,我们才能使用java语言开发程序. JDK=JRE+开发工具包 JRE=JVM+核心类 ...

  5. Java基础-JDK、JRE与JVM的区别

    JRE与JVM.JDK的区别 从下而上:最上层    JDK  -- java development kit (java开发工具包)中间层    JRE -- java runtime enviro ...

  6. Java基础-JDK动态代理

    JDK的动态代理依靠接口实现  代理模式 代理模式是常用的java设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事后处理消息等.代 ...

  7. Java基础—JDK环境变量配置

    1.安装JDK 下载网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 注意点 ...

  8. java基础JDK jvm path环境变量

    JDk=JRE +java的开发工具(javac.exe java.exe javadoc.exe)JRE =JVM +Java核心类库 2.为什么 要配置 path环境变量 ?如何配置?JAVA_H ...

  9. Java基础-jdk动态代理与cglib动态代理区别

    JDK动态代理 此时代理对象和目标对象实现了相同的接口,目标对象作为代理对象的一个属性,具体接口实现中,可以在调用目标对象相应方法前后加上其他业务处理逻辑. 代理模式在实际使用时需要指定具体的目标对象 ...

随机推荐

  1. HSV与RGB颜色空间的转换

    一.本质上,H的取值范围:0~360   S的取值范围:0~1    V的取值范围:0~255                                     但是,当图像为32F型的时候,各 ...

  2. Altium Designer PCB制作入门实例

    概要:本章旨在说明如何生成电路原理图.把设计信息更新到PCB文件中以及在PCB中布线和生成器件输出文件.并且介绍了工程和集成库的概念以及提供了3D PCB开发环境的简要说明.欢迎使用Altium De ...

  3. Oracle数据分页,并传出数据集

    1.创建Package create or replace package forPaged is type my_csr is ref cursor; procedure getPaged(tabl ...

  4. jq的bind用法

    type,[data],function(eventObject)String,Object,Function type: 含有一个或多个事件类型的字符串,由空格分隔多个事件.比如"clic ...

  5. Traveller数据访问路径

    2015年10月数据访问路径

  6. ios打包ipa的四种实用方法

    总结一下,目前.app包转为.ipa包的方法有以下几种: 1.Apple推荐的方式,即实用xcode的archive功能 Xcode菜单栏->Product->Archive->三选 ...

  7. SGU 226.Colored graph(最短路)

    时间限制:0.25s 空间限制:4M 题意: 给出一个n个节点,m条边的图,每条边都有标记了编号为1,2,3三种颜色之一,现在求从1号节点到n号节点的一条最短路径的长度,要求该路径中相邻的边没有相同的 ...

  8. Quartz任务调度器及与Spring的整合使用

    参考  点击打开链接

  9. 初学深度学习(TensorFlow框架的心得and经验总结)自用环境的总结

    初学者的时间大部分浪费在了环境上了: 建议直接上Linux系统,我推荐国产的深度系统,deepin这几年一直在不断的发展,现在15.4已经很不错了 1,图形化界面很漂亮,内置正版crossover,并 ...

  10. 必做作业3:原型化设计:地铁扫码app

    一.设计背景 伴随着地铁规模的快速扩张,使用手机扫码进出站成为了一种新型的地铁出行方式.在今天的北京和上海,地铁扫码已经极为普遍,广州和深圳也正在快速普及这种新方式.相信在不久的将来,其他拥有地铁或者 ...