sudo apt-get install default-jre default-jdk
java -version
當回顯類似於以下程式碼時,安裝成功(版本號可能存在差異,不影響使用)
備註:此方案下安裝的是系統預設JDK,一般情況下是OpenJDK,但環境變數不相同,故單獨拎出來講。
openjdk version "11.0.8" 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
sudo apt-get install openjdk-8-jdk
java -version
當回顯類似於以下程式碼時,安裝成功(版本號可能存在差異,不影響使用)
openjdk version 「1.8.0_91」
OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-0ubuntu4~15.10.1-b14)
OpenJDK Server VM (build 25.91-b14, mixed mode)
sudo add-apt-repository ppa:linuxuprising/java
sudo apt update
sudo apt install oracle-java14-installer
java -version
安裝檔案可以點選這裡獲得。注意選擇符合電腦執行指令集的版本,如使用Raspberry請下載AMD版本,如使用虛擬機器器請檢視實體機指令集版本。
sudo tar zxvf jdk-8-ea-b36e-linux-arm-hflt-*.tar.gz -C /usr/lib/jvm/
# 以jdk開頭的檔名,視下載的檔案輸入,推薦使用Tab自動補全,-C後面的路徑為解壓路徑
sudo update-alternatives --install "/usr/bin/java"
java -version
當回顯類似於以下程式碼時,安裝成功(版本號可能存在差異,不影響使用)
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)
因為JDK 8還不支援server模式,如果需要使用MapReduce, 需要強制在JVM client模式下執行DataNode。
cd /usr/local/hadoop/bin
cp hadoop hadoop-backup
#備份hadoop檔案
vim hadoop
在hadoop
檔案中查詢-server
欄位,將其刪除即可。
如果修改錯誤,可以使用:q!
強制不儲存退出。如果已經儲存,可以使用以下命令還原檔案
cp hadoop-backup hadoop
執行以下命令,查詢終端型別。回顯/bin
後面的就是終端型別。
echo $SHELL
vim ~/.bashrc
#使用bash作為終端時請新增上面這條(預設情況)
vim ~/.zshrc
#使用zsh或oh-my-zsh作為終端時請新增上面這條
在組態檔底部新增相應內容
export JAVA_HOME=/usr/lib/jvm/default-java
#使用DefaultJDK時請新增上面這條,不用修改。
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
#使用OpenJDK時請新增上面這條,其中以」java-」開頭的資料夾視安裝版本決定,建議在命令列下提前檢視。
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_60
#使用OracleJDK時請新增上面這條,其中具體路徑以實際解壓的路徑為準,建議在命令列下提前檢視。
source ~/.bashrc
#使用bash作為終端時請新增上面這條(預設情況)
source ~/.zshrc
#使用zsh或oh-my-zsh作為終端時請新增上面這條
如果同時安裝了複數個JDK,可以執行以下命令進行切換
sudo update-alternatives --config java
bash: ./java: cannot execute binary file
出現這個錯誤的原因可能jdk安裝包版本錯誤, 執行以下命令可以檢視系統版本,i686表示是32位元, x86_64表示是64位元。
sudo uname -m