sahara-image-elements/elements/openjdk/install.d/33-java

62 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
if [ "${DIB_DEBUG_TRACE:-0}" -gt 0 ]; then
set -x
fi
set -eu
set -o pipefail
echo "Installing OpenJDK"
default_jdk_version_for_distro () {
case "$DISTRO_NAME" in
centos | rhel )
echo "7"
;;
fedora )
if [ $(lsb_release -rs) -ge '21' ]; then
echo "8"
else
echo "7"
fi
;;
centos7 | rhel7 )
echo "8"
;;
ubuntu )
if [ "$DIB_RELEASE" = "trusty" ]; then
echo "7"
elif [ "$DIB_RELEASE" = "xenial" ]; then
echo "8"
fi
;;
*)
echo "Unknown OpenJDK distro: $DISTRO_NAME" >&2
exit 1
;;
esac
}
pkg=openjdk-$(default_jdk_version_for_distro)
pkg=$(pkg-map --element openjdk $pkg)
install-packages $pkg
case "$DISTRO_NAME" in
ubuntu )
JRE_PATH=$(update-alternatives --list java)
JRE_HOME=${JRE_PATH%/bin/java}
JDK_PATH=$(update-alternatives --list javac)
JDK_HOME=${JDK_PATH%/bin/javac}
;;
fedora | rhel | rhel7 | centos | centos7 )
# NOTE: rpm -E "%{java_home}" command returns wrong java home
# on CentOS, Fedora and RHEL
JRE_HOME="/usr/lib/jvm/java-openjdk/jre"
JDK_HOME="/usr/lib/jvm/java-openjdk"
;;
esac
setup-java-home $JRE_HOME $JDK_HOME
echo "OpenJDK has been installed"