Java SE JRE 或 Java SE JDK 發行版之間的差異

Java SE 的 Sun / Oracle 版本有兩種形式:JRE 和 JDK。簡單來說,JRE 支援執行 Java 應用程式,JDK 也支援 Java 開發。

Java 執行時環境

Java Runtime Environment 或 JRE 發行版由執行和管理 Java 應用程式所需的一組庫和工具組成。典型的現代 JRE 中的工具包括:

  • 用於在 JVM(Java 虛擬機器)中執行 Java 程式的 java 命令
  • 用於執行 Nashorn Javascript 引擎的 jjs 命令。
  • 用於操作 Java 金鑰庫的 keytool 命令。
  • 用於編輯安全沙箱安全策略的 policytool 命令。
  • pack200unpack200 工具用於打包和解包 pack200 檔案以進行 Web 部署。
  • 支援 Java CORBA 和 RMI 應用程式的 orbdrmidrmiregistrytnameserv 命令。

“桌面 JRE”安裝程式包括適用於某些 Web 瀏覽器的 Java 外掛。這是故意遺漏的 Server JREinstallers.linux 系統呼叫讀取基準測試

從 Java 7 更新 6 開始,JRE 安裝程式包含 JavaFX(2.2 或更高版本)。

Java 開發工具包

Java Development Kit 或 JDK 發行版包括 JRE 工具以及用於開發 Java 軟體的其他工具。其他工具通常包括:

  • javac 命令,它將 Java 原始碼(“。java”)編譯為位元組碼檔案(“.class”)。
  • 用於建立諸如 jarjarsigner 等 JAR 檔案的工具
  • 開發工具如:
    • appletviewer 用於執行 applet
    • idlj CORBA IDL 到 Java 編譯器
    • javah JNI 存根發生器
    • native2ascii 用於 Java 原始碼的字符集轉換
    • schemagen Java 到 XML 模式生成器(JAXB 的一部分)
    • serialver 生成 Java Object Serialization 版本字串。
    • 用於 JAX-WS 的 wsgenwsimport 支援工具
  • 診斷工具如:
    • jdb 是基本的 Java 偵錯程式
    • jmapjhat 用於轉儲和分析 Java 堆。
    • jstack 用於獲取執行緒堆疊轉儲。
    • javap 用於檢查“.class”檔案。
  • 應用程式管理和監視工具,例如:
    • jconsole 一個管理控制檯,
    • jstatjstatdjinfojps 用於應用程式監控

典型的 Sun / Oracle JDK 安裝還包括一個 ZIP 檔案,其中包含 Java 庫的原始碼。在 Java 6 之前,這是唯一公開可用的 Java 原始碼。

從 Java 6 開始,可以從 OpenJDK 站點下載 OpenJDK 的完整原始碼。它通常不包含在(Linux)JDK 包中,但可作為單獨的包提供。