- JVM,Java Virtual Machine,Java 虚拟机。
- JAR,Java Archive,Java 归档。一种软件包文件格式,通常用于聚合大量的Java类文件、相关的元数据和资源(文本、图片等)文件到一个文件,以便开发Java平台应用软件或库。
- Java SE,Java Standard Edition,Java 标准版,主要用于开发桌面程序。
- Java EE,Java Enterprise Edition,Java 企业版,在 Java SE 的基础上增加了大量的库,主要用于开发网站。
- Java ME,Java Micro Edition,微型版,主要用于开发移动设备。
- JDK,Java Development Kit,Java 开发套件。
- JRE,Java Runtime Environment,Java 运行环境。
简单地说,JRE 就是运行 Java 字节码的虚拟机。但是,如果只有Java源码,要编译成 Java 字节码就需要JDK,因为JDK除了包含JRE,还提供了编译器、调试器等开发工具。
┌─ ┌──────────────────────────────────┐
│ │ Compiler, debugger, etc. │
│ └──────────────────────────────────┘
JDK ┌─ ┌──────────────────────────────────┐
│ │ │ │
│ JRE │ JVM + Runtime Library │
│ │ │ │
└─ └─ └──────────────────────────────────┘
┌───────┐┌───────┐┌───────┐┌───────┐
│Windows││ Linux ││ macOS ││others │
└───────┘└───────┘└───────┘└───────┘
Java 相关的可执行文件
- java,这个可执行程序其实就是 JVM,运行Java程序,就是启动JVM,然后让JVM执行指定的编译后的代码;
- javac,这是Java的编译器,它用于把Java源码文件(以
.java
后缀结尾)编译为Java字节码文件(以.class
后缀结尾); - jar,用于把一组
.class
文件打包成一个.jar
文件,便于发布; - javadoc,用于从Java源码中自动提取注释并生成文档;
- jdb,Java调试器,用于开发阶段的运行调试。
参考:https://www.liaoxuefeng.com/wiki/1252599548343744/1255876875896416
(SAW:Game Over!)