Files
download/java/install.sh
耗子 758e1c8799
All checks were successful
Generate Checksums / checksums (push) Successful in 46s
feat: 清理提交
2026-01-31 07:03:45 +08:00

79 lines
2.1 KiB
Bash

#!/bin/bash
export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:$PATH
source <(curl -f -s --connect-timeout 10 --retry 3 https://dl.acepanel.net/public.sh)
if [ $? -ne 0 ]; then
echo "Download public.sh failed, please check the network or try again later."
exit 1
fi
slug=${1}
version=${2}
java_path="${setup_path}/server/java/${slug}"
# 架构映射
case ${ARCH} in
x86_64)
JAVA_ARCH="x64"
;;
aarch64)
JAVA_ARCH="aarch64"
;;
esac
# 准备安装目录
rm -rf ${java_path}
mkdir -p ${java_path}
cd ${java_path}
# 下载Amazon Corretto JDK
JAVA_TARBALL="amazon-corretto-${version}-linux-${JAVA_ARCH}.tar.gz"
JAVA_URL="https://corretto.aws/downloads/resources/${version}/${JAVA_TARBALL}"
echo "Downloading Corretto ${version} from AWS..."
aria2c -x8 \
-U "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36" \
-o ${JAVA_TARBALL} \
${JAVA_URL}
if [ $? -ne 0 ]; then
rm -rf ${java_path}
error "Failed to download Java ${version}"
fi
# 解压
tar -zxf ${JAVA_TARBALL}
if [ $? -ne 0 ]; then
rm -rf ${java_path}
error "Failed to extract Java ${version}"
fi
# Corretto解压后会在amazon-corretto-{full_version}-linux-{arch}目录下,移动到当前目录
mv amazon-corretto-*/* .
rm -rf amazon-corretto-*/
rm -f ${JAVA_TARBALL}
# 验证安装
if [ ! -f "${java_path}/bin/java" ]; then
rm -rf ${java_path}
error "Java ${version} installation failed"
fi
# 设置软链接
ln -sf ${java_path}/bin/java /usr/local/bin/java${slug}
ln -sf ${java_path}/bin/javac /usr/local/bin/javac${slug}
[ ! -f /usr/local/bin/java ] && ln -sf ${java_path}/bin/java /usr/local/bin/java
[ ! -f /usr/local/bin/javac ] && ln -sf ${java_path}/bin/javac /usr/local/bin/javac
# 创建环境变量配置
cat >${java_path}/env.sh <<EOF
export JAVA_HOME=${java_path}
export PATH=\$JAVA_HOME/bin:\$PATH
EOF
chmod 644 ${java_path}/env.sh
echo -e $HR
echo "Java ${version} (Amazon Corretto) installation successful"
echo "Java path: ${java_path}"
echo "To use this version, run: source ${java_path}/env.sh"
echo -e $HR