Java/下載與安裝JDK

維基教科書,自由的教學讀本
前往: 導覽搜尋

Java > 下載與安裝JDK


上下文連結[編輯]

目錄 上一節 HelloWorld 下一節 Java開發工具

JVM、JRE與JDK[編輯]

JVM是Java Virtual Machine的縮寫,即Java虛擬機。與編譯型語言不同,Java程序被編譯成位元組碼,而不是本地碼(處理器可以直接執行的二進制代碼)。Java虛擬機的功能就是模擬一台Java處理器,執行Java位元組碼。早期的JVM採用解釋執行,類似於解釋腳本語言,因此效率較低。後來加入JIT(Just In Time)技術,在執行Java位元組碼時,將位元組碼翻譯成本地碼再由處理器執行,效率提高了很多。最近幾年又加入了HotSpot技術,執行效率得到進一步提高。所謂HotSpot技術就是JVM在執行位元組碼時,並不是將所有的位元組碼都翻譯成本地碼,而是動態檢查常用的(hot)的位元組碼,將它們翻譯成本地碼,以提高執行速度,而很少執行的位元組碼則採用解釋執行,不會執行到的代碼是不會被翻譯成本地碼的。這樣做的好處是提高熱代碼的執行效率,避免翻譯冷代碼帶來的開銷。而事實上,通常的軟體代碼中只有很小一部分熱代碼,它們會被頻繁執行,而大部分都是冷代碼,很少會執行到,符合通常所說的2-8原則。

令人高興的是,Sun的Java虛擬機規範是公開的,也就是說任何第三方公司都可以實現自己的Java虛擬機。比如IBM實現的Java 1.4的虛擬機,據說執行效率比Sun提供的虛擬機高出很多。不過實際應用中,絕大多數人使用還是Sun的。

JRE是Java Runtime Environment的縮寫,即Java運行時環境。JRE除了包括JVM外,還包括有Java平台的核心類庫以及一些其他運行所需的文件(比如國際化支持的字符集和字體文件等)。JRE是執行Java程序的必要環境,因為虛擬機只能執行Java位元組碼,但是我們所編寫的程序需要用到Java標準平台所提供的類庫,沒有這些核心庫的支持,我們所編寫的程序也是無法執行的。打個比方,JVM相當於一台具有Java處理器的計算機硬體系統,而JRE則相當於構建於JVM之上的作業系統,我們所編寫的Java程序就相當於在作業系統上運行的應用程序。

JDK是Java Development Kit的縮寫,即Java開發包,是專門開發Java程序的SDK。有了JRE可以運行Java程序,有了JDK才可以開發Java程序。JDK除了包含JRE中的必需文件之外,還包括開發Java程序所必需的編譯器、調試器,以及一些方便開發Java程序其他工具。

下載、安裝JDK[編輯]

目前主流的JDK有兩個版本:JDK6在行業上應用最廣,且已經相當穩定,最新版本為Java SE 6 Update 45;JDK7為新一代Java標準,具有眾多新特性,也是目前Oracle唯一正式維護的版本,最新版本為Java SE 7 Update 21。

用戶可以在http://www.oracle.com/technetwork/java/javase/downloads/index.html下載。

Windows[編輯]

Windows下可以選擇離線安裝包或者在線安裝包。離線安裝包將下載整個JDK安裝程序到本地,安裝的時候,計算機不需要連接到網際網路。在線安裝包只下載一個很小的安裝程序,安裝的時候,這個程序將連接到Oracle的網站上,邊下載JDK,邊安裝。

Windows下的安裝跟其他軟體很相似,只需要簡單的設置一下幾個安裝選項就行了,一般情況下,使用默認設置即可。

安裝完成後,JDK安裝程序會建議您進行註冊。您可以忽略此信息,這不會影響您正常使用JDK;若您進行註冊,將會獲得Oracle提供的額外服務。

Linux[編輯]

Linux平台有幾種安裝JDK的方式,同時也有兩種JDK可供選擇。

  • Oracle JDK,Oracle官方提供的JDK,商業授權,閉源軟體
  • OpenJDK,開源的JDK版本,開放授權,自由軟體

目前很多Linux發行版已經默認採用OpenJDK,而將Oracle JDK移除了,如Ubuntu、Fedora、Debian、OpenSUSE。安裝OpenJDK一般通過Linux自帶的軟體管理器、軟體中心等安裝,也可以通過命令行。

  • 以Ubuntu為例,您需要運行Ubuntu軟體中心,搜索OpenJDK或者JDK,然後找到OpenJDK6或者OpenJDK7進行安裝。
  • 以Fedora為例,您需要運行添加或刪除軟體包,搜索OpenJDK或者JDK,然後找到OpenJDK6或者OpenJDK7進行安裝。

同時,Oracle JDK依舊可以從官方網站上下載到。Linux下的安裝包,Oracle提供了兩個版本,RPM包(二進制版本)和壓縮文件(原始碼版本)。 對於Debian和Ubuntu用戶,可以使用原始碼安裝,亦可從社區獲得他人打包的Deb安裝包。

Solaris[編輯]

Solaris可下載原始碼進行安裝,但需要注意處理器架構是否相符合。