Linux系統CentOS6.2版本下安裝JDK7詳細過程

mchdba發表於2014-08-23
前言:
        java 是一種可以撰寫跨平臺應用軟體的物件導向的程式設計語言,是由Sun Microsystems公司於1995年5月推出的Java程式設計語言和Java平臺(即JavaEE(j2ee), JavaME(j2me), JavaSE(j2se))的總稱。Java自面世後就非常流行,發展迅速,對C++語言形成了有力衝擊。Java 技術具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用於個人PC、資料中心、遊戲控制檯、科學超級計算機、行動電話和網際網路,同時擁有全球最大的開發者專業社群。




hadoop需要jdk支援,所以先在linux系統上要準備好jdk環境,詳細步驟如下所示

1,下載JDK安裝包
安裝版本:jdk-7u60-linux-x64.gz
下載地址:http://yun.baidu.com/share/link?shareid=1769428623&uk=103052787
檢視最新:http://www.oracle.com/technetwork/java/javase/downloads/index.html


2,解壓安裝
我們把JDK安裝到這個路徑:/usr/lib/jvm
如果沒有這個目錄(第一次當然沒有),我們就新建一個目錄
cd /usr/lib
sudo mkdir jvm
sudo tar zxvf ./jdk-7u60-linux-x64.tar.gz  -C /usr/lib/jvm

建立好了以後,我們來到剛才下載好的壓縮包的目錄,解壓到我們剛才新建的資料夾裡面去,並且修改好名字方便我們管理
sudo tar zxvf /root/jdk-7u25-linux-i586.tar.gz  -C /usr/lib/jvm
cd /usr/lib/jvm
sudo mv jdk1.7.0_25/ jdk7

檢視結果顯示:
[root@name01 jdk1.7.0_60]# cd /usr/lib/jvm/
[root@name01 jvm]# ll
total 4
drwxr-xr-x. 8 uucp 143 4096 May  7 13:50 jdk1.7.0_60
[root@name01 jvm]# cd jdk1.7.0_60/
[root@name01 jdk1.7.0_60]#
[root@name01 jdk1.7.0_60]# ll
total 19776
drwxr-xr-x. 2 uucp 143     4096 May  7 13:47 bin
-r--r--r--. 1 uucp 143     3339 May  7 13:41 COPYRIGHT
drwxr-xr-x. 4 uucp 143     4096 May  7 13:41 db
drwxr-xr-x. 3 uucp 143     4096 May  7 13:42 include
drwxr-xr-x. 5 uucp 143     4096 May  7 13:44 jre
drwxr-xr-x. 5 uucp 143     4096 May  7 13:49 lib
-r--r--r--. 1 uucp 143       40 May  7 13:41 LICENSE
drwxr-xr-x. 4 uucp 143     4096 May  7 13:42 man
-r--r--r--. 1 uucp 143      114 May  7 13:41 README.html
-rw-r--r--. 1 uucp 143      499 May  7 13:42 release
-rw-r--r--. 1 uucp 143 19903556 May  7 13:42 src.zip
-rw-r--r--. 1 uucp 143   123324 Apr 29 17:15 THIRDPARTYLICENSEREADME-JAVAFX.txt
-r--r--r--. 1 uucp 143   173559 May  7 13:41 THIRDPARTYLICENSEREADME.txt


3,配置環境變數
(1)只對當前使用者生效
vim ~/.bashrc
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

儲存退出,然後輸入下面的命令來使之生效
source ~/.bashrc

(2)對所有使用者生效
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

儲存退出,然後輸入下面的命令來使之生效
source /etc/profile


4,配置預設JDK(一般情況下這一步都可以省略)
由於一些Linux的發行版中已經存在預設的JDK,如OpenJDK等。所以為了使得我們剛才安裝好的JDK版本能成為預設的JDK版本,我們還要進行下面的配置。
執行下面的命令:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.0_60/bin/java 300
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.0_60/bin/javac 300
注意:如果以上兩個命令出現找不到路徑問題,只要重啟一下機器在重複上面兩行程式碼就OK了。

執行下面的程式碼可以看到當前各種JDK版本和配置:
sudo update-alternatives --config java


5,測試
在linux命令列,使用java -version和javac -version來檢視java版本,顯示結果如下:

[root@name01 jdk1.7.0_60]# java -version
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)
[root@name01 jdk1.7.0_60]#

[root@name01 jdk1.7.0_60]# javac -version
javac 1.7.0_60
[root@name01 jdk1.7.0_60]# 


6,java程式碼測試
寫一個簡單的java測試類Test.java,然後編譯執行java程式,如下所示:
[root@name01 tim]# vim Test.java

public class test {
        public static void main(String args[]) {
                System.out.println("A new jdk test !");
        }
}
儲存退出,編譯Test類
[root@name01 tim]# javac Test.java
Test.java:1: error: class test is public, should be declared in a file named test.java
public class test { 
       ^
1 error
報錯,需要把類名和java檔名統一一起來,不然沒法編譯
[root@name01 tim]# vim Test.java

public class Test {
        public static void main(String args[]) {
                System.out.println("A new jdk test !");
        }
}
儲存退出,然後編譯
[root@name01 tim]# javac Test.java
[root@name01 tim]#
[root@name01 tim]# ll Test*
-rw-r--r--. 1 root root 418 Aug 22 09:22 Test.class
-rw-r--r--. 1 root root 114 Aug 22 09:21 Test.java
[root@name01 tim]# 
編譯成功,多出了Test.class可執行檔案,然後執行看執行結果,如下所示:
[root@name01 tim]# java Test
A new jdk test !
[root@name01 tim]#

看到jdk執行正常出了結果,這表示java命令已經可以執行了,至此,jdk在linux下的環境完全部署成功。



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/26230597/viewspace-1256321/,如需轉載,請註明出處,否則將追究法律責任。

相關文章