首页 JVM环境
文章
取消

JVM环境

JDK、JRE和JVM的关系

  1. JDK(Java Development kit)即Java开发工具包,包含了JRE、解释器(java)、编译器(javac)、Java归档(jar)、文档生成器(javadoc)等工具,简单来说如果我们要开发Java程序,就需要某个版本的JDK。
  2. JRE(Java Runtime Environment)即Java运行时环境,提供Java应用程序执行所需的环境,包括JVM、核心类、支持文件等,如果只是要在某个机器上执行Java程序,可以下载JDK,也可以只安装JRE,后者体积更小
  3. JVM(Java Virtual Machine)即Java虚拟机,说到它往往有三种含义:
    • JVM规范要求
    • 满足JVM规范要求的一种具体实现
    • 一个JVM运行实例,在命令提示符下编写Java命令以运行Java类时,都会创建一个JVM实例

我们一般说的都是指第三种

范围关系

范围:JDK > JRE > JVM:

  • JDK = JRE + 开发工具
  • JRE = JVM + 类库

范围关系

开发运行Java程序时的交互关系

  1. 就是通过 JDK 开发的程序,编译以后,可以打包分发给其他装有 JRE 的机器上去运行。
  2. 运行的程序,则是通过 Java 命令启动的一个 JVM 实例,代码逻辑的执行都运行在这个 JVM 实例上。

运行时的关系

Java程序的开发运行过程:

JDK开发Java程序并编译成字节码或打包程序 –> JRE启动一个JVM实例,加载、验证、执行Java字节码以及依赖库,运行Java程序 –> JVM将程序和依赖库的 Java 字节码解析并变成本地代码执行,产生结果。

本文由作者按照 CC BY 4.0 进行授权

shiro总结

常用性能指标