天天看點

JVM虛拟機---在centos下安裝及編譯openjdk

一、解除安裝原有的jdk

rpm –qa | grep java

rpm –e –nodeps xxx

ps:這裡xxx是第一條指令中列印出來的原有jdk

二、安裝openjdk

自官網下載下傳openjdk,openjdk-7u6-fcs-src-b24-09_aug_2012.zip

unzip openjdk-7u6-fcs-src-b24-09_aug_2012.zip

得到一個openjdk為名的檔案夾

三、環境準備

1.必須有個JDK6的版本

CentOS解除安裝系統自帶的OpfenJDK并安裝Sun的JDK的方法

檢視目前系統的jdk: rpm -qa | grep jdk

得到的結果: 

[[email protected] java]#  rpm -qa | grep jdk

java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.i686 

解除安裝之:

 [[email protected] java]# yum -y remove java-1.6.0-openjdk-1.6.0.0-1.45.1.11.1.el6.i686

等一段時間就Complete了。

下載下傳Sun的JDK。我下載下傳的是 

jdk-6u37-linux-i586-rpm.bin 

如果是64位系統的話,要下載下傳:

 jdk-6u37-linux-x64-rpm.bin

之類的64位專用的包 

到/usr目錄下建立java目錄,将下載下傳的檔案放到/usr/java目錄下 

先将這個檔案變為可執行檔案(chmod 777) :

[[email protected] java]# chmod 777 jdk-6u37-linux-i586-rpm.bin 

然後執行這個檔案件進行安裝:

[[email protected] java]# ./jdk-6u37-linux-i586-rpm.bin  Unpacking... Checksumming... Extracting... UnZipSFX 5.50 of 17 February 2002, by Info-ZIP ([email protected]).   inflating: jdk-6u37-linux-i586.rpm     inflating: sun-javadb-common-10.6.2-1.1.i386.rpm     inflating: sun-javadb-core-10.6.2-1.1.i386.rpm     inflating: sun-javadb-client-10.6.2-1.1.i386.rpm     inflating: sun-javadb-demo-10.6.2-1.1.i386.rpm     inflating: sun-javadb-docs-10.6.2-1.1.i386.rpm     inflating: sun-javadb-javadoc-10.6.2-1.1.i386.rpm   Preparing...                ########################################### [100%]    1:jdk                    ########################################### [100%] Unpacking JAR files... rt.jar... jsse.jar... charsets.jar... tools.jar... localedata.jar... plugin.jar... javaws.jar... deploy.jar... Installing JavaDB Preparing...                ########################################### [100%]    1:sun-javadb-common      ########################################### [ 17%]    2:sun-javadb-core        ########################################### [ 33%]    3:sun-javadb-client      ########################################### [ 50%]    4:sun-javadb-demo        ########################################### [ 67%]    5:sun-javadb-docs        ########################################### [ 83%]    6:sun-javadb-javadoc     ########################################### [100%] Java(TM) SE Development Kit 6 successfully installed. Product Registration is FREE and includes many benefits: * Notification of new versions, patches, and updates * Special offers on Oracle products, services and training * Access to early releases and documentation Product and system data will be collected. If your configuration supports a browser, the JDK Product Registration form will be presented. If you do not register, none of this information will be saved. You may also register your JDK later by opening the register.html file (located in the JDK installation directory) in a browser. For more information on what data Registration collects and  how it is managed and used, see: http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html

Press Enter to continue..... 

這個時候按一下回車。

出現Done .

至此安裝結束。

接下來配置JDK:

 vi /etc/profile打開profile檔案,在profile檔案的末尾加上:

JAVA_HOME=/usr/java/jdk1.6.0_37 PATH=$JAVA_HOME/bin:$PATH CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export JAVA_HOME export PATH export CLASSPATH

儲存并關閉profile檔案,執行source /etc/profile指令讓修改生效。

運作下java-version 看一下java版本 :

 [[email protected] java]# java -version

java version "1.6.0_37" Java(TM) SE Runtime Environment (build 1.6.0_37-b06) Java HotSpot(TM) Client VM (build 20.12-b01, mixed mode, sharing) [[email protected] java]#

2.安裝alsa包,通過rpm –qa | grepalsa,是否有alsa-lib和alsa-lib-devel,若缺,可yum installalsa-lib-devel

3.安裝cups-devel  通過yum install cups-devel

4.安裝libXi-devel通過yum install libXi-devel

5.安裝freetype2.3或更新版本通過自官網下載下傳壓縮檔案,解壓縮,進入目錄,./configure makemakeinstall

6.安裝ant 自官網下載下傳,解壓縮

7.安裝編譯工具g++,yum install gccgcc-c++

四、配置環境變量

vim /etc/profile 或者在終端修改環境變量如下:

export LANG=C

export ALT_BOOTDIR=/usr/java/default/ 

export ALLOW_DOWNLOADS=true

export ANT_HOME=/opt/soft/apache-ant-1.9.6

 ALT_FREETYPE_HEADERS_PATH=/opt/soft/freetype-2.3.5

export ANT_OPTS="-Dhttp.proxyHost=proxy01.pd.intel.com–Dhttp.proxyPort=911 –Dhttps.proxyHost=proxy01.pd.intel.com–Dhttps.proxyPort=911"

export ALT_FREETYPE_LIB_PATH=/usr/local/lib

五、編譯

1.首先,進行編譯檢查

make sanity

如果出現Sanity check passed。則環境檢查通過。

2.進行編譯

make

其中,如果出現錯誤,大部分都是缺少庫,可安裝相應的庫。

最終出現

--Build times-----

則表明編譯完成

繼續閱讀