【解決思路】
0礁扮、安裝準(zhǔn)備
1、指定安裝路徑
2瞬沦、設(shè)置變量
3太伊、檢查是否已經(jīng)安裝了JDK1.8
4、解壓jdk1.8的安裝包
5逛钻、設(shè)置環(huán)境變量
6泳挥、驗(yàn)證安裝是否成功
【安裝腳本】
#!/usr/bin/bash
###############################
#? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #
#? ? ? ? ? ? ? ? ? ? 安裝JDK1.8? ? ? ? ? ? ? ? ? ? #
#? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #
###############################
#安裝準(zhǔn)備
#創(chuàng)建安裝介質(zhì)目錄并上傳安裝壓縮包
mkdir -p /usr/local/java/jdk1.8
# 設(shè)置變量
JDK_INSTALL_DIR=/usr/local/java/jdk1.8? ? ? # Java 安裝路徑塑荒,可以自定義
JAVA_VERSION=1.8? ? ? ? ? ? ? ? ? ? # 指定 Java 版本號
ARCHIVE_PATH="/usr/local/temp/jdk-8u201-linux-x64.tar.gz"? # JDK 壓縮包的路徑
# 函數(shù):檢查是否已經(jīng)安裝了指定版本的 JDK
check_jdk_installed() {
? ? if command -v java > /dev/null; then
? ? ? ? java_version=$(java -version 2>&1 | grep 'version' | awk -F '"' '{print $2}')
? ? ? ? if [[ "$java_version" == "1.8."* ]]; then
? ? ? ? ? ? echo "JDK $JAVA_VERSION 已經(jīng)安裝。"
? ? ? ? ? ? exit 0
? ? ? ? fi
? ? fi
? ? return 1
}
# 檢查是否已經(jīng)安裝了 JDK 1.8
if check_jdk_installed; then
? ? exit 0
fi
echo "解壓 JDK 到 $JDK_INSTALL_DIR"
tar -xzf "$ARCHIVE_PATH" -C "$JDK_INSTALL_DIR" --strip-components=1
# 獲取安裝后的 Java 安裝目錄
JAVA_HOME="$JDK_INSTALL_DIR"
if [ ! -d "$JAVA_HOME" ]; then
? ? echo "Java 安裝目錄 $JAVA_HOME 不存在,請檢查安裝路徑躬它。"
? ? exit 1
fi
sudo update-alternatives --install /usr/bin/java java "$JAVA_HOME/bin/java" 200
sudo update-alternatives --set java "$JAVA_HOME/bin/java"
sudo update-alternatives --install /usr/bin/javac javac "$JAVA_HOME/bin/javac" 200
sudo update-alternatives --set javac "$JAVA_HOME/bin/javac"
# 設(shè)置環(huán)境變量(可選)
echo "export JAVA_HOME=$JAVA_HOME" | sudo tee -a /etc/profile.d/java.sh > /dev/null
echo "export PATH=\$PATH:\$JAVA_HOME/bin" | sudo tee -a /etc/profile.d/java.sh > /dev/null
# 使環(huán)境變量生效
source /etc/profile.d/java.sh
# 驗(yàn)證安裝是否成功
java -version
if [ $? -eq 0 ]; then
? ? echo "JDK $JAVA_VERSION 已成功安裝筒狠。"
else
? ? echo "JDK 安裝出現(xiàn)問題挺庞,請檢查錯(cuò)誤信息并嘗試重新安裝讼稚。"
fi