2 # SPDX-License-Identifier: EPL-1.0
3 ##############################################################################
4 # Copyright (c) 2018 The Linux Foundation and others.
6 # All rights reserved. This program and the accompanying materials
7 # are made available under the terms of the Eclipse Public License v1.0
8 # which accompanies this distribution, and is available at
9 # http://www.eclipse.org/legal/epl-v10.html
10 ##############################################################################
11 echo "---> update-java-alternatives.sh"
12 # This script takes the java-version variable to set the proper alternative
13 # for java, javac and java_sdk_openjdk for ubuntu or centos/fedora/redhat distros
15 JAVA_ENV_FILE="/tmp/java.env"
17 update-java-redhat() {
18 if [[ "${SET_JDK_VERSION//[a-zA-Z]/}" = "11" ]]; then
19 export JAVA_HOME="/usr/lib/jvm/java-11-openjdk"
20 elif [[ "${SET_JDK_VERSION//[a-zA-Z]/}" = "12" ]]; then
21 export JAVA_HOME="/usr/lib/jvm/java-12-openjdk"
22 elif [[ "${SET_JDK_VERSION//[a-zA-Z]/}" = "17" ]]; then
23 export JAVA_HOME="/usr/lib/jvm/java-17-openjdk"
25 export JAVA_HOME="/usr/lib/jvm/java-1.${SET_JDK_VERSION//[a-zA-Z:-]/}.0-openjdk"
27 sudo /usr/sbin/alternatives --install /usr/bin/java java "${JAVA_HOME}/bin/java" 1
28 sudo /usr/sbin/alternatives --install /usr/bin/javac javac "${JAVA_HOME}/bin/javac" 1
29 sudo /usr/sbin/alternatives --install /usr/lib/jvm/java-openjdk java_sdk_openjdk "${JAVA_HOME}" 1
30 sudo /usr/sbin/alternatives --set java "${JAVA_HOME}/bin/java"
31 sudo /usr/sbin/alternatives --set javac "${JAVA_HOME}/bin/javac"
32 sudo /usr/sbin/alternatives --set java_sdk_openjdk "${JAVA_HOME}"
33 echo JAVA_HOME="$JAVA_HOME" > "$JAVA_ENV_FILE"
36 update-java-ubuntu() {
37 HOST_ARCH=$(dpkg --print-architecture)
38 export JAVA_HOME="/usr/lib/jvm/java-${SET_JDK_VERSION//[a-zA-Z:-]/}-openjdk-${HOST_ARCH}"
39 sudo /usr/bin/update-alternatives --install /usr/bin/java java "${JAVA_HOME}/bin/java" 1
40 sudo /usr/bin/update-alternatives --install /usr/bin/javac javac "${JAVA_HOME}/bin/javac" 1
41 sudo /usr/bin/update-alternatives --install /usr/lib/jvm/java-openjdk java_sdk_openjdk "${JAVA_HOME}" 1
42 sudo /usr/bin/update-alternatives --set java "${JAVA_HOME}/bin/java"
43 sudo /usr/bin/update-alternatives --set javac "${JAVA_HOME}/bin/javac"
44 sudo /usr/bin/update-alternatives --set java_sdk_openjdk "${JAVA_HOME}"
45 echo JAVA_HOME="$JAVA_HOME" > "$JAVA_ENV_FILE"
48 echo "---> Updating Java version"
49 OS=$(facter operatingsystem | tr '[:upper:]' '[:lower:]')
53 echo "---> RedHat type system detected"
57 echo "---> Ubuntu system detected"
62 echo JAVA_HOME="${JAVA_HOME}"