1. 程式人生 > >Java中JDK和JRE的區別是什麽?它們的作用分別是什麽?

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

devel alt 開發工具 分享 環境變量的配置 需要 功能 沒有 time

JDK和JRE是Java開發和運行工具,其中JDK包含了JRE,但是JRE是可以獨立安裝的,它們在Java開發和運行的時候起到不同的作用~

1.JDK

JDK是Java Development Kit的縮寫,是Java的開發工具包,主要包含了各種類庫和工具,當然也包含了另外一個JRE.。那麽為什麽要包含另外一個JRE呢?而且<JDK安裝目錄>/JRE/bin目錄下,包含有server一個文件夾~包含一個jvm.dll,這說明JDK提供了一個虛擬機。

另外,JDK的bin目錄下有各種Java程序需要用到的命令,與JRE的bin目錄最明顯的區別就是JDK文件下才有javac,這一點很好理解,因為JRE只是一個運行環境而已,與開發無關。正因為如此,具備開發功能的JDK所包含的JRE下才會同時有server的JVM,而僅僅作為運行環境的JRE下,只需要server的jvm.dll就夠了。

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

2.JRE

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

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

技術分享圖片

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

3.JDK與JRE的區別

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

4.Tomcat和JDK是什麽關系

tomcat是java的web項目運行容器之一;
jdk是java運行環境。也就是說java沒有jdk肯定是沒法編譯運行的。
java運行必須依賴於jdk環境,但是不一定要用tomcat容器,如WebLogic、WebSphere等都是可以的。

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