首頁 > 軟體

CentOS 下設定JDK

2020-06-16 17:45:42

從官網上下載jdk到系統中,並解壓好

tar –axvf jdk.tr.gz

  1. PATH環境變數。作用是指定命令搜尋路徑,在shell下面執行命令時,它會到PATH變數所指定的路徑中查詢看是否能找到相應的命令程式。我們需要把 jdk安裝目錄下的bin目錄增加到現有的PATH變數中,bin目錄中包含經常要用到的可執行檔案如javac/java/javadoc等待,設定好 PATH變數後,就可以在任何目錄下執行javac/java等工具了。

  2. CLASSPATH環境變數。作用是指定類搜尋路徑,要使用已經編寫好的類,前提當然是能夠找到它們了,JVM就是通過CLASSPTH來尋找類的。我們 需要把jdk安裝目錄下的lib子目錄中的dt.jar和tools.jar設定到CLASSPATH中,當然,當前目錄“.”也必須加入到該變數中。

  3. JAVA_HOME環境變數。它指向jdk的安裝目錄,Eclipse/NetBeans/Tomcat等軟體就是通過搜尋JAVA_HOME變數來找到並使用安裝好的jdk。

四. 三種設定環境變數的方法

  1. 修改/etc/profile檔案

    如果你的計算機僅僅作為開發使用時推薦使用這種方法,因為所有使用者的shell都有權使用這些環境變數,可能會給系統帶來安全性問題。

    •用文字編輯器開啟/etc/profile

    •在profile檔案末尾加入:

      JAVA_HOME=/usr/share/jdk1.5.0_05

      PATH=$JAVA_HOME/bin:$PATH

      CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

      export JAVA_HOME

      export PATH

      export CLASSPATH

    •重新登入或者 source /etc/profile

    •註解

      a. 你要將 /usr/share/jdk1.5.0_05jdk 改為你的jdk安裝目錄

      b. linux下用冒號“:”來分隔路徑

      c. $PATH / $CLASSPATH / $JAVA_HOME 是用來參照原來的環境變數的值

        在設定環境變數時特別要注意不能把原來的值給覆蓋掉了,這是一種

        常見的錯誤。

      d. CLASSPATH中當前目錄“.”不能丟,把當前目錄丟掉也是常見的錯誤。

      e. export是把這三個變數匯出為全域性變數。

      f. 大小寫必須嚴格區分。

  2. 修改.bashrc檔案

這種方法更為安全,它可以把使用這些環境變數的許可權控制到使用者級別,如果你需要給某個使用者許可權使用這些環境變數,你只需要修改其個人使用者主目錄下的.bashrc檔案就可以了。

•用文字編輯器開啟使用者目錄下的.bashrc檔案

本身如果是進入的圖形介面的話是看不到該檔案的,按住Ctrl+h用來顯示隱藏檔案可以通過文字編輯器開啟,也可以通過Vi開啟來修改

    •在.bashrc檔案末尾加入:

      set JAVA_HOME=/usr/share/jdk1.7.0_25

      export JAVA_HOME

      set PATH=$JAVA_HOME/bin:$PATH

           export PATH

           set CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

           export CLASSPATH

    •重新登入

通過命令

source ~/.bashrc

使之生效

3. 直接在shell下設定變數

不贊成使用這種方法,因為換個shell,你的設定就無效了,因此這種方法僅僅是臨時使用,以後要使用的時候又要重新設定,比較麻煩。

只需在shell終端執行下列命令:

    export JAVA_HOME=/usr/share/jdk1.5.0_05

    export PATH=$JAVA_HOME/bin:$PATH

    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

這樣就設定好了jdk的環境變數..通過終端敲入

www.linuxidc.com@linuxidc:~$ java -version

java version "1.6.0_27"

OpenJDK Runtime Environment (IcedTea6 1.12.5) (6b27-1.12.5-0Ubuntu0.12.04.1)

OpenJDK Server VM (build 20.0-b12, mixed mode)

www.linuxidc.com@linuxidc:~$

這樣還沒有真正意義上完成jdk的設定,都應該知道系統中有一套openJdk是系統預設的所以

會顯示目前系統中的java環境可以看到系統預設的環境還是1.6版本的..也就是不是我剛才安裝的1.7版本的..再往後看可以發現該java所在的包為OpenJDK

 

後面的工作就是不用系統預設的openJdk了..而是用我們設定好的jdk

4.設定預設JDK

由於一些Linux的發行版中已經存在預設的JDK,如OpenJDK等。所以為了使得我們剛才安裝好的JDK版本能成為預設的JDK版本,我們還要進行下面的設定。

執行下面的命令:

sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk7/bin/java 300

sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk7/bin/javac 300

 注意:如果以上兩個命令出現找不到路徑問題,只要重新啟動一下計算機在重複上面兩行程式碼就OK了。

在命令列中敲入:sudo update-alternatives --config java終端會顯示如下文字

sudo update-alternatives --config java

有 2 個候選項可用於替換 java (提供 /usr/bin/java)。

  選擇      路徑                                        優先順序  狀態

------------------------------------------------------------

* 0            /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java  1061      自動模式

  1            /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java  1061      手動模式

  2            /usr/share/jdk1.7.0_25/bin/java                300      手動模式

要維持當前值[*]請按確認鍵,或者鍵入選擇的編號:

這樣你就可以通過選擇2號來完成系統預設java版本的設定,這樣就搞定了..至於測試我是覺得沒什麼必要,因為你只需要在終端中打入javac 和java命令看看有沒有幫助資訊出現就可以了..不妨試試?:

www.linuxidc.com@linuxidc:~$ javac

用法:javac <選項> <原始檔>

其中,可能的選項包括:

  -g                        生成所有偵錯資訊

  -g:none                    不生成任何偵錯資訊

  -g:{lines,vars,source}    只生成某些偵錯資訊

  -nowarn                    不生成任何警告

  -verbose                  輸出有關編譯器正在執行的操作的訊息

  -deprecation              輸出使用已過時的 API 的源位置

  -classpath <路徑>            指定查詢使用者類檔案和注釋處理程式的位置

  -cp <路徑>                  指定查詢使用者類檔案和注釋處理程式的位置

  -sourcepath <路徑>          指定查詢輸入原始檔的位置

  -bootclasspath <路徑>        覆蓋引導類檔案的位置

  -extdirs <目錄>              覆蓋安裝的擴充套件目錄的位置

  -endorseddirs <目錄>        覆蓋簽名的標準路徑的位置

  -proc:{none,only}          控制是否執行注釋處理和/或編譯。

  -processor <class1>[,<class2>,<class3>...]要執行的注釋處理程式的名稱;繞過預設的搜尋進程

  -processorpath <路徑>        指定查詢註釋處理程式的位置

  -d <目錄>                    指定存放生成的類檔案的位置

  -s <目錄>                    指定存放生成的原始檔的位置

  -implicit:{none,class}    指定是否為隱式參照檔案生成類檔案

  -encoding <編碼>            指定原始檔使用的字元編碼

  -source <版本>              提供與指定版本的源相容性

  -target <版本>              生成特定 VM 版本的類檔案

  -version                  版本資訊

  -help                      輸出標準選項的提要

  -Akey[=value]              傳遞給注釋處理程式的選項

  -X                        輸出非標準選項的提要

  -J<標誌>                    直接將 <標誌> 傳遞給執行時系統

  -Werror                    Terminate compilation if warnings occur

www.linuxidc.com@linuxidc:~$

java執行環境正常@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

www.linuxidc.com@linuxidc:~$ javac

用法:javac <選項> <原始檔>

其中,可能的選項包括:

  -g                        生成所有偵錯資訊

  -g:none                    不生成任何偵錯資訊

  -g:{lines,vars,source}    只生成某些偵錯資訊

  -nowarn                    不生成任何警告

  -verbose                  輸出有關編譯器正在執行的操作的訊息

  -deprecation              輸出使用已過時的 API 的源位置

  -classpath <路徑>            指定查詢使用者類檔案和注釋處理程式的位置

  -cp <路徑>                  指定查詢使用者類檔案和注釋處理程式的位置

  -sourcepath <路徑>          指定查詢輸入原始檔的位置

  -bootclasspath <路徑>        覆蓋引導類檔案的位置

  -extdirs <目錄>              覆蓋安裝的擴充套件目錄的位置

  -endorseddirs <目錄>        覆蓋簽名的標準路徑的位置

  -proc:{none,only}          控制是否執行注釋處理和/或編譯。

  -processor <class1>[,<class2>,<class3>...]要執行的注釋處理程式的名稱;繞過預設的搜尋進程

  -processorpath <路徑>        指定查詢註釋處理程式的位置

  -d <目錄>                    指定存放生成的類檔案的位置

  -s <目錄>                    指定存放生成的原始檔的位置

  -implicit:{none,class}    指定是否為隱式參照檔案生成類檔案

  -encoding <編碼>            指定原始檔使用的字元編碼

  -source <版本>              提供與指定版本的源相容性

  -target <版本>              生成特定 VM 版本的類檔案

  -version                  版本資訊

  -help                      輸出標準選項的提要

  -Akey[=value]              傳遞給注釋處理程式的選項

  -X                        輸出非標準選項的提要

  -J<標誌>                    直接將 <標誌> 傳遞給執行時系統

  -Werror                    Terminate compilation if warnings occur

www.linuxidc.com@linuxidc:~$

javac編譯環境正常@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

www.linuxidc.com@linuxidc:~$ java -version

java version "1.7.0_25"

Java(TM) SE Runtime Environment (build 1.7.0_25-b15)

Java HotSpot(TM) Server VM (build 23.25-b01, mixed mode)

www.linuxidc.com@linuxidc:~$ ^C

通過java -version可以看出預設的java環境已經變成了我剛才設定的jdk1.7版本..

這樣Linux下設定jdk的工作就算完成了...

Ubuntu 14.04安裝JDK1.8.0_25與設定環境變數 http://www.linuxidc.com/Linux/2015-01/112030.htm 

CentOS 搭建JDK環境  http://www.linuxidc.com/Linux/2015-06/118879.htm 

Ubuntu 14.04安裝JDK1.8.0_25與設定環境變數  http://www.linuxidc.com/Linux/2015-01/112030.htm 

Ubuntu 14.04 LTS安裝Oracle JDK 1.8  http://www.linuxidc.com/Linux/2014-11/109216.htm 

CentOS6.3安裝JDK和環境設定 http://www.linuxidc.com/Linux/2012-09/70780.htm 

Ubuntu 14.04 安裝 JDK8  http://www.linuxidc.com/Linux/2014-09/106218.htm 

Ubuntu下安裝JDK圖文解析 http://www.linuxidc.com/Linux/2014-09/107291.htm 

本文永久更新連結地址http://www.linuxidc.com/Linux/2016-03/128960.htm


IT145.com E-mail:sddin#qq.com