當前位置:首頁 » 操作系統 » openjdk源碼下載

openjdk源碼下載

發布時間: 2022-07-10 05:26:14

❶ openjdk和jdk的區別

使用過linux的人都應該知道,在大多數LINUX發行版本里,內置或者通過軟體源安裝JDK的話,都是安裝的openjdk,那麼到底什麼是openjdk,它與sun jdk有什麼關系和區別呢?
歷史上的原因是,openjdk是jdk的開放原始碼版本,以GPL協議的形式放出。在JDK7的時候,openjdk已經成為jdk7的主幹開發,sun jdk7是在openjdk7的基礎上發布的,其大部分原始碼都相同,只有少部分原始碼被替換掉。使用JRL(javaResearch License,Java研究授權協議)發布。
至於openjdk6則更是有其復雜的一面,首先是openjdk6是jdk7的一個分支,並且盡量去除Java SE7的新特性,使其盡量的符合Java6的標准。
關於JDK和OpenJDK的區別,可以歸納為以下幾點:
授權協議的不同:
openjdk採用GPL V2協議放出,而JDK則採用JRL放出。兩者協議雖然都是開放源代碼的,但是在使用上的不同在於GPL V2允許在商業上使用,而JRL只允許個人研究使用。
OpenJDK不包含Deployment(部署)功能:
部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,這些功能在Openjdk中是找不到的。
OpenJDK源代碼不完整:
這個很容易想到,在採用GPL協議的Openjdk中,sun jdk的一部分源代碼因為產權的問題無法開放openjdk使用,其中最主要的部份就是JMX中的可選元件SNMP部份的代碼。因此這些不能開放的源代碼將它作成plug,以供OpenJDK編譯時使用,你也可以選擇不要使用plug。而Icedtea則為這些不完整的部分開發了相同功能的源代碼(OpenJDK6),促使OpenJDK更加完整。
部分源代碼用開源代碼替換:
由於產權的問題,很多產權不是SUN的源代碼被替換成一些功能相同的開源代碼,比如說字體柵格化引擎,使用Free Type代替。
openjdk只包含最精簡的JDK:
OpenJDK不包含其他的軟體包,比如Rhino Java DB JAXP……,並且可以分離的軟體包也都是盡量的分離,但是這大多數都是自由軟體,你可以自己下載加入。
不能使用Java商標:
這個很容易理解,在安裝openjdk的機器上,輸入「java -version」顯示的是openjdk,但是如果是使用Icedtea補丁的openjdk,顯示的是java。(未驗證)
總之,在Java體系中,還是有很多不自由的成分,源代碼的開發不夠徹底,希望Oracle能夠讓JCP更自由開放一些,這也是所有Java社區所希望的。

❷ openjdk-8-jdk-headless 什麼版本

OpenJDK8是JDK的開放源碼版本,以GPL(General Public License,通用性公開許可證)協議的形式放出。因為授權協議的原因,Sun公司實現的JDK的一部分源碼因為產權的問題無法開放OpenJDK使用。因此相比於JDK,OpenJDK的源碼只包含了最精簡的JDK。

openjdk是jdk的開放原始碼版本,以GPL協議的形式放出。在JDK7的時候,openjdk已經成為jdk7的主幹開發,sun jdk7是在openjdk7的基礎上發布的,其大部分原始碼都相同。

只有少部分原始碼被替換掉。使用JRL(JavaResearch License,Java研究授權協議)發布。

至於openjdk6則更是有其復雜的一面,首先是openjdk6是jdk7的一個分支,並且盡量去除Java SE7的新特性,使其盡量的符合Java6的標准。

(2)openjdk源碼下載擴展閱讀:

DK和OpenJDK的區別,可以歸納為以下幾點:

1、授權協議的不同

openjdk採用GPL V2協議放出,而JDK則採用JRL放出。兩者協議雖然都是開放源代碼的,但是在使用上的不同在於GPL V2允許在商業上使用。

而JRL只允許個人研究使用。OpenJDK不包含Deployment(部署)功能。

部署的功能包括:Browser Plugin、Java Web Start、以及Java控制面板,這些功能在Openjdk中是找不到的。

2、OpenJDK源代碼不完整

這個很容易想到,在採用GPL協議的Openjdk中,sun jdk的一部分源代碼因為產權的問題無法開放openjdk使用,其中最主要的部份就是JMX中的可選元件SNMP部份的代碼。

因此這些不能開放的源代碼將它作成plug,以供OpenJDK編譯時使用,你也可以選擇不要使用plug。

而Icedtea則為這些不完整的部分開發了相同功能的源代碼(OpenJDK6),促使OpenJDK更加完整。

3、部分源代碼用開源代碼替換

由於產權的問題,很多產權不是SUN的源代碼被替換成一些功能相同的開源代碼,比如說字體柵格化引擎,使用Free Type代替。

4、openjdk只包含最精簡的JDK

OpenJDK不包含其他的軟體包,比如Rhino Java DB JAXP……,並且可以分離的軟體包也都是盡量的分離,但是這大多數都是自由軟體,你可以自己下載加入。

5、不能使用Java商標

這個很容易理解,在安裝openjdk的機器上,輸入「java -version」顯示的是openjdk,但是如果是使用Icedtea補丁的openjdk,顯示的是java。(未驗證)

總之,在Java體系中,還是有很多不自由的成分,源代碼的開發不夠徹底,希望Oracle能夠讓JCP更自由開放一些,這也是所有Java社區所希望的。



❸ 關於jdk裡面的jvm的源碼位置問題

jdk或者虛擬機的源碼?

虛擬機跟操作系統有關了,建議可以去找一下openjdk的源碼(關於jdk那部分是一樣的,oralce-jdk多了一部分不開源的sun代碼)
試試看這個網站網頁鏈接

比如jdk10的源碼,hotspot就是hotspot虛擬機的源碼了

❹ openjdk-7-jdk_7u161在哪裡下載

官網應該有下載, 如果找不到可以去下載源碼,自己編譯一份

❺ 怎麼搭建openjdk源碼環境

環境構建需要的工具
1.cygwin 工具。這個工具的主要用處是為了在window平台上模擬出一個unix虛擬環境。
為了能夠在window下編譯openJDK,我們需要手動安裝的工具如下:
Devel:binutils,make.
Interpreters:m4
Utils:cpio,awk,file(我在安裝的過程中,沒找到awk包和file包,可能是版本的問題。)
Archive:zip,unzip
System:procps
以上提供的鍵值對說明:(前面是文件名:包名)
2.安裝編譯器,我選用的編譯器是VS2010,因為這個編譯器中包好了windows SDK v7.0a,否則還要自己去下載這個SDK
(cygwin和vs2010安裝後都會在操作系統的path環境變數中加入自己的bin目錄路徑,必須保證VS2010的bin目錄在 cygwin的bin目錄之前,因為這兩個軟體的bin目錄中各自都有一個連接器「link.exe」,但是只有VS2010中的連接器可以完成 openJDK的編譯)
3.下載一個已經編譯好的JDK。
4.最後一步就是下載一個Apache ANT,JDK中的java代碼部分都是使用ANT腳本進行編譯的,ANT版本要求在1.6.5以上。
5.准備依賴項。
由於OpenJDK中的源碼沒有100%開源,但是在編譯JDK的時候,我們又需要這部分閉源包,官方稱為「JDK plug」。這部分閉源包可以從Source Releases頁面下載。在windows平台下,其是以jar包的形式存在的。通過下面的命令就可以安裝
java -jar jdk-7-ea-plug-b121-windows-i586-09_dec_1010.jar
運行後就會出現提示框,點擊accept接受協議,然後安裝到指定目錄即可。
安裝完成後建立一個環境變數「ALT_BINARY_PLUGS-PATH」,變數值為安裝的JDK plug的安裝路徑,後面編譯的時候需要它
6.安裝一個大於2.3版本的FreeType,這是一個免費的字體渲染庫。JDK的Swing部分和JConsole這類工具要使用到它。安裝好後建立兩個環境變數「ALT_FREETYPE_LIB_PATH」和「ALT_FREETYPE_HEADERS_PATH」,分別指向FreeType安裝目錄下的bin目錄和include目錄。另外還有一點官方文檔沒有提到但必須要做的事情是把FreeType的bin目錄加入到PATH環境變數中。
7.下載Microsoft DirectX 9.0 SDK(Summer 2004),安裝後大約有298MB,在微軟官方網站上搜索一下就可以找到下載地址,它是免費的。安裝後建立環境變數「ALT_DXSDK_PATH」指向DirectX 9.0 SDK的安裝目錄
8.去尋找一個名為「MSVCR100.DLL」的動態鏈接庫,如果讀者在前面安裝了全套的Visual Studio 2010,那這個文件在本機就能找到,否則上網搜索一下也能找到單獨的下載地址,大概有744KB。建立環境變數「ALT_MSVCRNN_DLL_PATH」指向這個文件所在的目錄。如果讀者選擇的是VS2003,這個文件名應當為「MSVCR73.DLL」,應該在很多軟體中都包含有這個文件,如果找不到的話,前面下載的「Bootstrap JDK」的bin目錄中應該也有一個,直接拿來用吧。
以上這些,基本的工具就准備完成了,看到這里是不是想吐血了呢!就一台筆記本,為了方便就在window下編譯了。有條件的可以直接在Linux筆記本上編譯OpenJDK,這樣會省去好多麻煩。

❻ 如何添加openjdk源文件到eclipse

Window->Perference->Java->Build Path->ClassPathVariable,可以看到JRE_SRC變數是空的,
而且標明了不可更改。其實JDK源碼在安裝的時候已經放在了jdk所在的目錄下,只是eclipse使用
了不帶有源碼的jre,導致沒找到對應的源碼,點擊 Window->Perference->Java->Installed JREs->Search,
找到JDK所在的目錄,然後點OK使用這個JRE,這下子應該就有源碼了。

❼ openjdk怎麼看javac源碼

下載源碼,下好了後,只需要解壓下載包下的一個子目錄:/jdk/src/share/classes/,解壓的路徑記好了,如:/home/simon/Develop/openjdk-src,然後打開Eclipse,選中 windows--preference--installed jres--選中jre6(你的可能是其他版本)--edit--選中rt.jar--source attachment--external folders,這里復制剛剛我們源碼的解壓目錄進入,確定。

❽ 如何交叉編譯openjdk 使之能在arm-Linux中運行

直接下載OpenJDK8源碼肯定不通過。有一個專門的移植工程:

hg clone http://hg.openjdk.java.net/aarch64-port/jdk8/

hg clone http://hg.openjdk.java.net/aarch64-port/jdk8u/


這個有時無法下載,使用:

https://github.com/AdoptOpenJDK/openjdk-aarch64-jdk8u

關於OpenJDK的編譯,這個博客記錄最為詳細,所有問題都有解決辦法:

網頁鏈接

❾ 關於java的openjdk的問題,拙計啊

openJDK項目在java.net里邊 地址是 http://openjdk.java.net

jdk7的源碼 地址 http://jdk7.java.net/source.html
windows和linux用的源碼不同下載源碼後放在里邊不同的文件夾
java代碼是公用的在share目錄下。
jdk6的源碼已經關閉了,下載不了了。

熱點內容
帝瓦雷演算法 發布:2024-11-20 09:16:11 瀏覽:51
怎麼查看一個ip地址伺服器關閉 發布:2024-11-20 09:12:26 瀏覽:442
金鑽文件夾加密大師是啥 發布:2024-11-20 09:01:22 瀏覽:881
蘋果看手機配置怎麼看 發布:2024-11-20 09:01:15 瀏覽:998
mysql慢sql語句 發布:2024-11-20 09:01:14 瀏覽:312
電腦搭建虛擬中文伺服器 發布:2024-11-20 08:58:57 瀏覽:525
python伺服器搭建 發布:2024-11-20 08:54:56 瀏覽:104
文件夾標綠 發布:2024-11-20 08:54:02 瀏覽:816
戰錘ce腳本 發布:2024-11-20 08:45:06 瀏覽:957
grp怎樣反編譯 發布:2024-11-20 08:45:05 瀏覽:652