Java中JDK和JRE的區別是什麼?它們的作用分別是什麼?

JDKJREJava開發和運行工具,其中JDK包含了JRE,但是JRE是可以獨立安裝的~

它們在Java開發和運行的時候起到不同的作用~

  關於JDKJRE,大家一定會記得,在安裝JDK的時候需要分爲倆個步驟:安裝JDKJRE,大家一般會一起安裝,也建議大家分開裝,因爲這樣更能幫助大家弄清它們的區別

  JREJava Runtime Environment的縮寫,是Java程序的運行環境。既然是運行,當然要包含JVM,也就是所謂的Java虛擬機,還有所以的Java類庫的class文件,都在lib目錄下,並且都打包成了jar

至於在Windows上的虛擬機是哪個文件呢?就是<JRE安裝目錄>/bin/server中的jvm.dll


  JDKJava Development Kit的縮寫,是Java的開發工具包,主要包含了各種類庫和工具,當然也包含了另外一個JRE,那麼爲什麼要包含另外一個JRE呢?而且<JDK安裝目錄>/JRE/bin目錄下,包含有server一個文件夾~包含一個jvm.dll,這說明JDK提供了一個虛擬機。另外,JDKbin目錄下有各種Java程序需要用到的命令,與JREbin目錄最明顯的區別就是JDK文件下才有javac,這一點很好理解,因爲JRE只是一個運行環境而已,與開發無關。正因爲如此,具備開發功能的JDK所包含的JRE下才會同時有serverJVM,而僅僅作爲運行環境的JRE下,只需要serverjvm.dll就夠了。

  注意:JDK所提供的運行環境和工具度需要進行環境變量的配置以後,才能使用,最主要的配置就是把<JDK安裝目錄>/bin目錄設置爲Path環境變量值的一部分。

  另外,安裝JRE的時候安裝程序會自動把JREjava.exe添加到了系統變量中。系統變量Path的最前面有%SystemRoot%system32;%SystemRoot%;這樣的配置,那樣到Windows/system32目錄下main去看看,會發現一個java.exe文件。這樣就無需配置環境變量,也可以運行Java程序了。

可以這樣回答:

JDKJava的開發工具,它不僅提供了Java程序運行所需的JRE,還提供了一系列的編譯,運行等工具,如javacjavajavaw等。JRE只是Java程序的運行環境,它最核心的內容就是JVMJava虛擬機)及核心類庫。



作者:王博
鏈接:https://www.zhihu.com/question/20317448/answer/14737358
來源:知乎
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。

JRE: Java Runtime Environment
JDK:Java Development Kit
JRE顧名思義是java運行時環境,包含了java虛擬機,java基礎類庫。是使用java語言編寫的程序運行所需要的軟件環境,是提供給想運行java程序的用戶使用的。
JDK顧名思義是java開發工具包,是程序員使用java語言編寫java程序所需的開發工具包,是提供給程序員使用的。JDK包含了JRE,同時還包含了編譯java源碼的編譯器javac,還包含了很多java程序調試和分析的工具:jconsole,jvisualvm等工具軟件,還包含了java程序編寫所需的文檔和demo例子程序。
如果你需要運行java程序,只需安裝JRE就可以了。如果你需要編寫java程序,需要安裝JDK。
JRE根據不同操作系統(如:windows,linux等)和不同JRE提供商(IBM,ORACLE等)有很多版本,最常用的是Oracle公司收購SUN公司的JRE版本。如果你想查看更官方的解釋,可以前往Oracle官網:oracle.com/cn/technolog


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章