前言
以下脚本已在CentOS 7.9版本通过测试。
官网地址:链接
下载安装包
进入官网下载对应版本的jdk:下载地址,以下以安装jdk17为例
复制上面的链接,使用以下命令在linux中下载安装包
wget https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
解压安装包
解压命令,-C参数指定解压到对应的路径中,可以不写,默认解压在当前目录下
tar -zxvf jdk-17_linux-x64_bin.tar.gz -C /root/server/
进入到解压目录中
cd /root/server/jdk-17.0.7/
ll
配置环境变量
在/etc/profile文件中增加以下内容,或者在/etc/profile.d/下面新建自己的文件进行环境变量的配置
以下命令二选一即可
vim /etc/profile
或者
vim /etc/profile.d/my_env.sh
新增以下内容
#JDK配置
export JAVA_HOME=/root/server/jdk-17.0.7
export PATH=$JAVA_HOME/bin:$PATH
刷新环境变量
source /etc/profile
验证结果
java -version
输出以下结果代表安装成功
一键安装脚本
运行脚本请使用以下命令运行,否则会导致脚本内部运行source /etc/profile刷新环境变量后在脚本外部不生效的问题。运行脚本需要输入jdk的安装路径和jdk的下载路径
参数说明:
$1: 安装路径
$2: jdk下载路径
source <shell文件名称> <$1:安装路径> <$2:jdk下载路径>
运行示例
source install_jdk.sh ../server https://download.oracle.com/java/17/latest/jdk-17_linux-x64_bin.tar.gz
脚本会根据输入的下载链接下载jdk,并完成环境变量的配置
脚本内容
#!/bin/bash
#******************************************************************
#========================== 校验脚本的入参 ========================
#******************************************************************
if [ ! "$1" ];then
echo "请输入安装路径"
return
fi
if [ ! "$2" ];then
echo "请输入JDK下载地址"
return
fi
#******************************************************************
#====================== 安装路径不存在则创建 ======================
#******************************************************************
if [ ! -d $1 ];then
mkdir -p $1
echo "======================= 创建文件夹 $1 ======================="
fi
#******************************************************************
#========================== 下载jdk安装包 =========================
#******************************************************************
wget $2
#*******************************************************************
#======================= 获取下载的压缩包名称 ======================
#*******************************************************************
file_names=($(ls -t1 | grep jdk | grep tar.gz | awk '{print $1}'))
file_name=${file_names[0]}
#*******************************************************************
#========================= 解压下载的安装包 ========================
#*******************************************************************
tar -zxvf $file_name -C $1
#*******************************************************************
#======================== 获取到解压的文件名 =======================
#*******************************************************************
names=($(ls -t1 $1 | grep jdk | awk '{print $1}'))
name=${names[0]}
#*******************************************************************
#=========================== 配置环境变量 ==========================
#*******************************************************************
install_path=$(cd $1/$name && pwd)
echo -e "\n#JDK配置" >> /etc/profile.d/my_env.sh
echo "export JAVA_HOME=$install_path" >> /etc/profile.d/my_env.sh
echo "export PATH=\$JAVA_HOME/bin:\$PATH" >> /etc/profile.d/my_env.sh
#*******************************************************************
#=========================== 刷新环境变量 ==========================
#*******************************************************************
source /etc/profile
#*******************************************************************
#=========================== 输出java版本 ==========================
#*******************************************************************
java -version
if [ $? == 0 ];then
echo "=========== install success ==========="
else
echo "=========== install failed ==========="
fi
# 删除安装包
rm -f $file_name
结束
以上便是安装jdk的脚本,如有问题欢迎随时交流