JRE與JDK的區別與聯絡
前言
我們在剛接觸Java的時候,第一步就是安裝Java環境,就會看到JDK、JRE目錄。初學者對JDK、JRE都很陌生,不知道它們之間真正的作用和含義,那麼瞭解JDK、JRE分別是什麼及它們之間的關係,有助於我們更加快速、深刻的理解Java語言的特性。
1、JDK簡介
JDK的全稱:Java Development Kit ,是Java的標準開發工具包(普通使用者只需要安裝 JRE來執行 Java 程式。而程式開發者必須安裝JDK來編譯、除錯程式)。它提供了編譯、執行Java程式所需的各種工具和資源,包括Java編譯器、Java執行環境JRE,以及常用的Java基礎類庫等,是整個JAVA的核心。
JDK一般有三種版本:
SE(J2SE),standard edition,標準版,是我們通常用的一個版本 EE(J2EE)
EE(J2EE),enterpsise edtion,企業版,使用這種JDK開發J2EE應用程式
ME(J2ME),micro edtion,主要用於移動裝置、嵌入式裝置上的java應用程式 (相對來說現在使用的很少了,已經被Java的android體系取代)
1.1、jdk8安裝目錄介紹
2、JRE簡介
JRE的全稱:Java runtime environment ,是執行基於Java語言編寫的程式所不可缺少的執行環境,用於解釋執行Java的位元組碼檔案。
也是透過它,Java的開發者才得以將自己開發的程式釋出到使用者手中,讓使用者使用。JRE中包含了Java virtual machine(JVM),runtime class libraries和Java application launcher,這些是執行Java程式的必要元件。與大家熟知的JDK不同,JRE是Java執行環境,並不是一個開發環境,所以沒有包含任何開發工具(如編譯器和偵錯程式),只是針對於使用Java程式的使用者。
2.1、JRE安裝目錄
3、Java裡JDK,JVM 和 JRE關係圖
由下圖中可以看出以下幾點:
JDK=JRE+多種Java開發工具
JRE=JVM+各種類庫
這三者的關係是一層層的巢狀關係。JDK>JRE>JVM
4、總結JDK、JRE的區別和聯絡
JDK的作用域大於JRE。
4.1、區別
JRE可以執行Java程式,但不能用於使用者開發、除錯Java程式。
4.2、聯絡
JDK裡包含JRE,都可用於執行程式,使用者不管是安裝JDK還是JRE都可執行Java程式。
從JDK11開始,安裝JDK預設是沒有JRE的,二者是在一起的。如果需要JRE這個單獨目錄,可以在JDK目錄下面去開啟命令視窗,然後執行如下命令(win10執行這個生成JRE需要目錄許可權,執行完之後就會生成JRE):
bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70030295/viewspace-2991760/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- JDK,JRE,JVM區別與聯絡JDKJVM
- Jdk、Jre Jvm的區別和聯絡JDKJVM
- jdk與jre的區別JDK
- cookie與session的區別與聯絡CookieSession
- Session與Cookie的區別與聯絡SessionCookie
- 同步與阻塞的區別與聯絡
- hive與hbase的聯絡與區別Hive
- onchange與onpropertychange的聯絡與區別!
- BS與CS的聯絡與區別
- define與typedef區別與聯絡
- Kafka與ActiveMQ的區別與聯絡詳解KafkaMQ
- 詳解Kafka與ActiveMQ的區別與聯絡!KafkaMQ
- B/S與C/S的聯絡與區別
- 關於HashSet與TreeSet的區別與聯絡
- Oracle FailSafe與rac的聯絡與區別OracleAI
- Android與Java ME的區別與聯絡AndroidJava
- COM與DCOM的區別與聯絡 (轉)
- Session和Cookie的聯絡與區別SessionCookie
- CGI與Servlet的區別和聯絡Servlet
- Session和Cookie的區別與聯絡SessionCookie
- Apache與Tomcat 區別聯絡ApacheTomcat
- Oracle FailSafe與rac的聯絡與區別(zt)OracleAI
- JDK與JREJDK
- JDK和JRE的區別 .JDK
- JDK JRE JVM 的區別JDKJVM
- jdk和jre的區別JDK
- Linux和Ubuntu的區別與聯絡LinuxUbuntu
- connection session process的聯絡與區別Session
- COM/DCOM的區別與聯絡 (轉)
- jQuery與JavaScript與ajax三者的區別與聯絡jQueryJavaScript
- servlet/filter/listener/interceptor區別與聯絡ServletFilter
- ipv4與ipv6的聯絡與區別
- javaSE中的==和equals的聯絡與區別Java
- 感知器、logistic與svm 區別與聯絡
- 程式和執行緒的區別與聯絡執行緒
- HDFS 塊和 Input Splits 的區別與聯絡
- NUMA,MPP和HADOOP的區別與聯絡Hadoop
- 並行和併發的區別與聯絡並行