jdk-1.7.sh 1.9 KB

1234567891011121314151617181920212223242526272829303132333435
  1. #!/bin/bash
  2. # Author: yeho <lj2007331 AT gmail.com>
  3. # BLOG: https://linuxeye.com
  4. #
  5. # Notes: OneinStack for CentOS/RedHat 6+ Debian 8+ and Ubuntu 14+
  6. #
  7. # Project home page:
  8. # https://oneinstack.com
  9. # https://github.com/oneinstack/oneinstack
  10. Install_JDK17() {
  11. pushd ${oneinstack_dir}/src > /dev/null
  12. JDK_FILE="jdk-`echo ${jdk17_ver} | awk -F. '{print $2}'`u`echo ${jdk17_ver} | awk -F_ '{print $NF}'`-linux-${SYS_BIT_j}.tar.gz"
  13. JAVA_dir=/usr/java
  14. JDK_NAME="jdk${jdk17_ver}"
  15. JDK_PATH=${JAVA_dir}/${JDK_NAME}
  16. [ "${PM}" == 'yum' ] && [ -n "`rpm -qa | grep jdk`" ] && rpm -e `rpm -qa | grep jdk`
  17. [ ! -e ${JAVA_dir} ] && mkdir -p ${JAVA_dir}
  18. tar xzf ${JDK_FILE} -C ${JAVA_dir}
  19. if [ -d "${JDK_PATH}" ]; then
  20. chown -R ${run_user}:${run_group} ${JDK_PATH}
  21. /bin/cp ${JDK_PATH}/jre/lib/security/cacerts /etc/ssl/certs/java
  22. [ -z "`grep ^'export JAVA_HOME=' /etc/profile`" ] && { [ -z "`grep ^'export PATH=' /etc/profile`" ] && echo "export JAVA_HOME=${JDK_PATH}" >> /etc/profile || sed -i "s@^export PATH=@export JAVA_HOME=${JDK_PATH}\nexport PATH=@" /etc/profile; } || sed -i "s@^export JAVA_HOME=.*@export JAVA_HOME=${JDK_PATH}@" /etc/profile
  23. [ -z "`grep ^'export CLASSPATH=' /etc/profile`" ] && sed -i "s@export JAVA_HOME=\(.*\)@export JAVA_HOME=\1\nexport CLASSPATH=\$JAVA_HOME/lib/tools.jar:\$JAVA_HOME/lib/dt.jar:\$JAVA_HOME/lib@" /etc/profile
  24. [ -n "`grep ^'export PATH=' /etc/profile`" -a -z "`grep '$JAVA_HOME/bin' /etc/profile`" ] && sed -i "s@^export PATH=\(.*\)@export PATH=\$JAVA_HOME/bin:\1@" /etc/profile
  25. [ -z "`grep ^'export PATH=' /etc/profile | grep '$JAVA_HOME/bin'`" ] && echo 'export PATH=$JAVA_HOME/bin:$PATH' >> /etc/profile
  26. . /etc/profile
  27. echo "${CSUCCESS}$JDK_NAME installed successfully! ${CEND}"
  28. else
  29. rm -rf $JAVA_dir
  30. echo "${CFAILURE}JDK install failed, Please contact the author! ${CEND}" && lsb_release -a
  31. kill -9 $$
  32. fi
  33. popd
  34. }