![](/img/trans.png)
[英]How can you install Jenkins on linux mint or ubuntu using oracle jdk instead of openjdk?
[英]Installing Oracle Java on Linux Mint (instead of using OpenJDK) — possible problems with linking
我提前為長時間的查詢道歉,但我很遺憾,並希望包含所有相關信息。
這是我開始使用的系統:
Linux Mint 14 Nadia MATE
64-bit Kernel
OpenJDK version 1.7.0_21
我想安裝Oracle Java 7並將其作為我的系統默認設置。
這是我嘗試過的:
1)下載了JDK1.7.0_21的tar文件
2)解壓縮並將其移動到/usr/lib/jvm/jdk1.7.0_21
3) cd /usr/lib/jvm
4) ln -s jdk1.7.0_21 java-7-oracle
5)創建文件/usr/lib/jvm/.java-7-oracle.jinfo
並繼續使用以下信息填充它:
alias=java-7-oracle
priority=50
section=non-free
jre ControlPanel /usr/lib/jvm/java-7-oracle/jre/bin/ControlPanel
jre java /usr/lib/jvm/java-7-oracle/jre/bin/java
jre java_vm /usr/lib/jvm/java-7-oracle/jre/bin/java_vm
jre javaws /usr/lib/jvm/java-7-oracle/jre/bin/javaws
....
6)然后,由於一些可能不合理的原因,我放棄了這種方法,轉而采用我覺得我更好理解的較短的方法。 所以我...
7)刪除了我創建的符號鏈接rm java-7-oracle
希望它只刪除符號鏈接。 8)繼續執行以下命令:
sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/jdk1.7.*/bin/java 1065
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/jvm/jdk1.7.*/bin/javac 1065
sudo update-alternatives --install /usr/bin/javaws javaws /usr/lib/jvm/jdk1.7.*/bin/javaws 1065
sudo update-alternatives --install /usr/bin/jar jar /usr/lib/jvm/jdk1.7.*/bin/jar 1065
9) sudo update-alternatives --config java
我選擇了這個選項:
/usr/lib/jvm/jdk1.7.0_21/bin/java 1065 manual mode
之后,當我運行java -version
我得到錯誤,說無法啟動Java虛擬機。
然后,我進去了,並且更加混亂,將優先級更改為1等等。我甚至對我的/etc/profile
進行了以下更改:
JAVA_HOME=/usr/lib/jvm/jdk1.7.0_17
PATH=$PATH:$JAVA_HOME/bin
export JAVA_HOME
export PATH
加載它: . /etc/profile
. /etc/profile
但我仍然無法讓java工作。 不同的是,現在當我運行java -version
我得到:
bash: /usr/bin/java: No such file or directory
我也試過指定絕對路徑: /usr/lib/jvm/jdk1.7.0_21/bin/java -version
但無濟於事。
有人可以幫幫我嗎? 在這一點上我感到非常迷茫。
而且我似乎無法恢復到OpenJDK。
謝謝!
問題是,我在我的64位系統中使用了32位版本的Java。
所以我刪除了/usr/lib/jvm/jdk1.7.0_21
然后我去了Oracle並下載了Java for Linux x64。
(我最初被他們模糊的“Java for Linux x86”標簽誤導,因為我的系統是x86-64。顯然他們的x86指的是32位系統。)
下載正確的64位版本后,我按照本網站的說明操作:
1.檢查您的Ubuntu Linux操作系統架構是32位還是64位 ,打開終端並運行以下命令。 鍵入/復制/粘貼:file / sbin / init注意Ubuntu Linux操作系統體系結構的位版本,無論是32位還是64位,它都會顯示。
2.檢查系統上是否安裝了Java。 為此,您必須從終端運行Java版本命令。 打開終端並輸入以下命令:鍵入/復制/粘貼:java -version如果您的系統上安裝了OpenJDK,它可能如下所示:java version“1.7.0_15”OpenJDK Runtime Environment(IcedTea6 1.10pre)(7b15 ~pre1-0lucid1)OpenJDK 64位服務器VM(內置19.0-b09,混合模式)如果您的系統上安裝了OpenJDK,則為此練習安裝了錯誤的Java供應商版本。
3.從系統中完全刪除OpenJDK / JRE,並創建一個目錄來保存Oracle Java JDK / JRE二進制文件。 這將防止系統沖突和Java的不同供應商版本之間的混淆。 例如,如果您的系統上安裝了OpenJDK / JRE,則可以通過在命令行鍵入以下內容來刪除它:
類型/復制/粘貼:
sudo apt-get purge openjdk-\\*
此命令將從您的系統中完全刪除OpenJDK / JRE
類型/復制/粘貼:
sudo mkdir -p /usr/local/java
此命令將創建一個用於保存Oracle Java JDK和JRE二進制文件的目錄。
4.下載適用於Linux的Oracle Java JDK。 確保為32位或64位的系統體系結構選擇正確的壓縮二進制文件(以tar.gz結尾)。 例如,如果您在Ubuntu Linux 32位操作系統上下載32位Oracle Java二進制文件。 例如,如果您在Ubuntu Linux 64位操作系統上下載64位Oracle Java二進制文件。 可選,下載Oracle Java JDK文檔選擇jdk-7u45-apidocs.zip重要信息:64位Oracle Java二進制文件無法在32位Ubuntu Linux操作系統上運行,如果您嘗試安裝,則會收到多個系統錯誤消息32位Ubuntu Linux上的64位Oracle Java。
5.將Oracle Java二進制文件復制到/ usr / local / java目錄中。 在大多數情況下,Oracle Java二進制文件將下載到:/ home /“your_user_name”/ Downloads。 32位Ubuntu Linux上的32位Oracle Java安裝說明:
類型/復制/粘貼:
cd /home/"your_user_name"/Downloads
類型/復制/粘貼:
sudo cp -r jdk-7u45-linux-i586.tar.gz /usr/local/java
類型/復制/粘貼:
cd /usr/local/java
64位Ubuntu Linux安裝說明中的64位Oracle Java: 類型/復制/粘貼:
cd /home/"your_user_name"/Downloads
類型/復制/粘貼:
sudo cp -r jdk-7u45-linux-x64.tar.gz /usr/local/java
類型/復制/粘貼:
cd /usr/local/java
6.在下載的Oracle Java tar.gz文件上運行以下命令。 請確保以root用戶身份執行此操作,以使其可供系統上的所有用戶執行。 要打開根終端類型 sudo -s you will be prompted for your logon password
。
32位Ubuntu Linux上的32位Oracle Java安裝說明:
類型/復制/粘貼:
sudo chmod a+x jdk-7u25-linux-i586.tar.gz
64位Ubuntu Linux上的64位Oracle Java安裝說明:
類型/復制/粘貼:
sudo chmod a+x jdk-7u45-linux-x64.tar.gz
7.在32位Ubuntu Linux安裝說明的/ usr / local / java 32位Oracle Java 目錄中解壓縮壓縮的Java二進制文件 :
類型/復制/粘貼:
sudo tar xvzf jdk-7u25-linux-i586.tar.gz
64位Ubuntu Linux上的64位Oracle Java安裝說明:
類型/復制/粘貼:
sudo tar xvzf jdk-7u45-linux-x64.tar.gz
8.仔細檢查您的目錄。 此時,您應該在/ usr / local / java中有兩個未壓縮的二進制目錄,其中Java JDK / JRE列為: Type / Copy / Paste: ls -a
jdk1.7.0_45
9.編輯系統PATH文件/ etc / profile,並將以下系統變量添加到系統路徑中。 以root身份使用nano,gedit或任何其他文本編輯器, 打開 /etc/profile
。
類型/復制/粘貼:
sudo gedit /etc/profile
或 類型/復制/粘貼:
sudo nano /etc/profile
10.使用箭頭鍵向下滾動到文件末尾,並在/ etc / profile文件的末尾添加以下行: Type / Copy / Paste:
JAVA_HOME=/usr/local/java/jdk1.7.0_45
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH
11.保存/etc/profile
文件並退出。
12.通知您的Oracle Java JDK / JRE所在的Ubuntu Linux系統。 這將告訴系統新的Oracle Java版本可供使用。
類型/復制/粘貼:
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.7.0_45/bin/java" 1
此命令通知系統Oracle Java JRE可供使用
類型/復制/粘貼:
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.7.0_45/bin/javac" 1
此命令通知系統Oracle Java JDK可供使用
類型/復制/粘貼:
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.7.0_45/bin/javaws" 1
此命令通知系統Oracle Java Web Start可供使用
13.通知您的Ubuntu Linux系統Oracle Java JDK / JRE必須是默認的Java。 類型/復制/粘貼:
sudo update-alternatives --set java /usr/local/java/jdk1.7.0_45/bin/java
此命令將為系統設置java運行時環境
類型/復制/粘貼:
sudo update-alternatives --set javac /usr/local/java/jdk1.7.0_45/bin/javac
此命令將為系統設置javac編譯器
類型/復制/粘貼:
sudo update-alternatives --set javaws /usr/local/java/jdk1.7.0_45/bin/javaws
此命令將為系統設置Java Web start
14.鍵入以下命令重新加載系統范圍的PATH / etc / profile: 鍵入/復制/粘貼:
. /etc/profile
請注意,重啟Ubuntu Linux系統后,系統范圍的PATH / etc / profile文件將重新加載
15.測試您的系統上是否正確安裝了Oracle Java。 運行以下命令並記下Java的版本:
16.將成功安裝32位Oracle Java:
類型/復制/粘貼:
java -version
此命令顯示系統上運行的java版本您應該收到一條消息,顯示: java version“1.7.0_45”Java(TM)SE運行時環境(版本1.7.0_25-b25)Java HotSpot(TM)服務器VM(構建) 23.1-b03,混合模式)
類型/復制/粘貼:
javac -version
此命令可以讓您知道您現在可以從終端編譯Java程序。 您應該收到一條消息,顯示: javac 1.7.0_25
** 17。 將成功安裝Oracle Java 64位:
類型/復制/粘貼:
java -version
此命令顯示系統上運行的java版本您應該收到一條消息,顯示: java version“1.7.0_25”Java(TM)SE運行時環境(版本1.7.0_21-b21)Java HotSpot(TM)64位服務器VM(build 23.6-b04,混合模式)
類型/復制/粘貼:
javac -version
此命令可以讓您知道您現在可以從終端編譯Java程序。 您應該收到一條消息,顯示: javac 1.7.0_25
[ https://www.wikihow.com/Install-Oracle-Java-JDK-on-Ubuntu-Linux][1]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.