1. 程式人生 > 實用技巧 >JDK---00Linux上編譯openjdk8

JDK---00Linux上編譯openjdk8

Centos 7 編譯自定義jdk8

1. 安裝所需的依賴

yum install alsa-lib-devel cups-devel libX* gcc gcc-c++ freetype-devel libstdc++-static ant make 
yum install clang -y
yum install clang++ -y
yum install autoconf -y
yum install freetype freetype-config -y

下圖是安裝的依賴版本跟使用的Linux版本

2. 安裝一個jdk作為bootstrap jdk

你要編譯openjdk8 那麼電腦上至少都要裝一個jdk7,下圖是我電腦上配置的jdk,配置流程跟在Linux上配置jdk一樣的

3. 去下載openjdk原始碼

去這個網站 上面下載自己 要編譯的jdk原始碼;我要編譯jdk8所以就下載jdk8的

4. 自動配置

解壓下載好的原始碼包之後,進入解壓後的原始碼包(下圖為目錄結構),輸入 sh configure 進行自動配置(預設沒有build目錄,這是編譯成功後生成的)

5. 進行編譯

第一次編譯輸入make all 指令,等待時間比較久,耐心等待

進入build目錄在進入生成的 linux-x86_64-normal-server-release目錄

這裡面的images目錄是編譯生成的jdk成品映象,

6. 在idea中設定自己編譯的jdk環境

但是設定了這個檢視原始碼不能進行修改,點選下圖這個,全選下面的目錄,然後點右邊的 減號 刪除,自己重新選擇jdk原始碼位置。

選擇下圖的目錄就行,等待idea索引完成

7. 修改原始碼如何生效

比如修改原始碼如下

修改之後在下圖目錄結構下,執行 make images 就能完成原始碼的修改並生效

PS:給虛擬機器的記憶體要大,不然開啟idea執行編譯是記憶體會不夠用,或者把idea關閉之後執行編譯

效果圖: