63 lines
2.3 KiB
Bash
63 lines
2.3 KiB
Bash
|
|
#!/bin/bash
|
||
|
|
# Author: yeho <lj2007331 AT gmail.com>
|
||
|
|
# BLOG: https://linuxeye.com
|
||
|
|
#
|
||
|
|
# Notes: OneinStack for CentOS/RedHat 7+ Debian 9+ and Ubuntu 16+
|
||
|
|
#
|
||
|
|
# Project home page:
|
||
|
|
# https://oneinstack.com
|
||
|
|
# https://github.com/oneinstack/oneinstack
|
||
|
|
|
||
|
|
Install_OpenJDK17() {
|
||
|
|
if [ "${Family}" == 'rhel' ]; then
|
||
|
|
if [[ "${RHEL_ver}" =~ ^7$ ]]; then
|
||
|
|
cat > /etc/yum.repos.d/adoptium.repo << EOF
|
||
|
|
[Adoptium]
|
||
|
|
name=Adoptium
|
||
|
|
baseurl=https://mirrors.tuna.tsinghua.edu.cn/Adoptium/rpm/rhel\$releasever-\$basearch/
|
||
|
|
enabled=1
|
||
|
|
gpgcheck=0
|
||
|
|
EOF
|
||
|
|
yum -y install temurin-17-jdk
|
||
|
|
JAVA_HOME=/usr/lib/jvm/temurin-17-jdk
|
||
|
|
else
|
||
|
|
yum -y install java-17-openjdk-devel
|
||
|
|
JAVA_HOME=/usr/lib/jvm/java-17-openjdk
|
||
|
|
fi
|
||
|
|
elif [ "${Family}" == 'debian' ]; then
|
||
|
|
if [[ "${Debian_ver}" =~ ^9$|^10$ ]]; then
|
||
|
|
#wget -qO - https://packages.adoptium.net/artifactory/api/gpg/key/public | apt-key add -
|
||
|
|
cat ${oneinstack_dir}/src/adoptium.key | sudo apt-key add -
|
||
|
|
apt-add-repository --yes https://mirrors.tuna.tsinghua.edu.cn/Adoptium/deb
|
||
|
|
apt -y update
|
||
|
|
apt-get --no-install-recommends -y install temurin-17-jdk
|
||
|
|
JAVA_HOME=/usr/lib/jvm/temurin-17-jdk-${SYS_ARCH}
|
||
|
|
else
|
||
|
|
apt-get --no-install-recommends -y install openjdk-17-jdk
|
||
|
|
JAVA_HOME=/usr/lib/jvm/java-17-openjdk-${SYS_ARCH}
|
||
|
|
fi
|
||
|
|
elif [ "${Family}" == 'ubuntu' ]; then
|
||
|
|
if [[ "${Ubuntu_ver}" =~ ^16$ ]]; then
|
||
|
|
cat ${oneinstack_dir}/src/adoptium.key | sudo apt-key add -
|
||
|
|
apt-add-repository --yes https://mirrors.tuna.tsinghua.edu.cn/Adoptium/deb
|
||
|
|
apt -y update
|
||
|
|
apt-get --no-install-recommends -y install temurin-17-jdk
|
||
|
|
JAVA_HOME=/usr/lib/jvm/temurin-17-jdk-${SYS_ARCH}
|
||
|
|
else
|
||
|
|
apt-get --no-install-recommends -y install openjdk-17-jdk
|
||
|
|
JAVA_HOME=/usr/lib/jvm/java-17-openjdk-${SYS_ARCH}
|
||
|
|
fi
|
||
|
|
fi
|
||
|
|
if [ -e "${JAVA_HOME}/bin/java" ]; then
|
||
|
|
cat > /etc/profile.d/openjdk.sh << EOF
|
||
|
|
export JAVA_HOME=${JAVA_HOME}
|
||
|
|
export CLASSPATH=\$JAVA_HOME/lib/tools.jar:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib
|
||
|
|
EOF
|
||
|
|
. /etc/profile.d/openjdk.sh
|
||
|
|
echo "${CSUCCESS}OpenJDK17 installed successfully! ${CEND}"
|
||
|
|
else
|
||
|
|
echo "${CFAILURE}OpenJDK17 install failed, Please contact the author! ${CEND}" && grep -Ew 'NAME|ID|ID_LIKE|VERSION_ID|PRETTY_NAME' /etc/os-release
|
||
|
|
kill -9 $$; exit 1;
|
||
|
|
fi
|
||
|
|
}
|