-
Notifications
You must be signed in to change notification settings - Fork 81
/
Copy pathset_java_ver
executable file
·105 lines (87 loc) · 2.63 KB
/
set_java_ver
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#!/bin/bash
###########################################################
#
# script to download and set default java version
#
# (c) 2021 nimmis <[email protected]>
#
###########################################################
function get_cpu_arch_for_java () {
cpu_arch_line=$(lscpu | grep Architecture)
case "$cpu_arch_line" in
*x86_64*)
echo "x64"
;;
*armv7*)
echo "arm"
;;
*armv8*) # unconfirmed
echo "aarch64"
;;
*)
echo "Unknown processor architecture. Please file a bug report."
;;
esac
}
function set_java_17 () {
if ! [ -d /usr/lib/jvm/jdk-17* ]; then
CPU_ARCH=$(get_cpu_arch_for_java)
echo "Downloading JDK 1.17 $CPU_ARCH"
curl -L "https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.2%2B8/OpenJDK17U-jdk_${CPU_ARCH}_linux_hotspot_17.0.2_8.tar.gz" | tar xz -C /usr/lib/jvm
fi
echo "set java version to 17"
rm -f /usr/lib/jvm/default-jvm
ln -s /usr/lib/jvm/jdk-17* /usr/lib/jvm/default-jvm
}
function set_java_16 () {
if ! [ -d /usr/lib/jvm/jdk-16* ]; then
CPU_ARCH=$(get_cpu_arch_for_java)
echo "Downloading JDK 1.16 $CPU_ARCH"
curl -L "https://github.com/adoptium/temurin16-binaries/releases/download/jdk-16.0.2%2B7/OpenJDK16U-jdk_${CPU_ARCH}_linux_hotspot_16.0.2_7.tar.gz" | tar xz -C /usr/lib/jvm
fi
echo "set java version to 16"
rm -f /usr/lib/jvm/default-jvm
ln -s /usr/lib/jvm/jdk-16* /usr/lib/jvm/default-jvm
}
function set_java_11 () {
if ! [ -d /usr/lib/jvm/jdk-11* ]; then
CPU_ARCH=$(get_cpu_arch_for_java)
echo "Downloading JDK 1.11 $CPU_ARCH"
curl -L "https://github.com/adoptium/temurin11-binaries/releases/download/jdk-11.0.14.1%2B1/OpenJDK11U-jdk_${CPU_ARCH}_linux_hotspot_11.0.14.1_1.tar.gz" | tar xz -C /usr/lib/jvm
fi
echo "set java version to 11"
rm -f /usr/lib/jvm/default-jvm
ln -s /usr/lib/jvm/jdk-11* /usr/lib/jvm/default-jvm
}
function set_java_8 () {
if ! [ -d /usr/lib/jvm/jdk8* ]; then
CPU_ARCH=$(get_cpu_arch_for_java)
echo "Downloading JDK 1.8 $CPU_ARCH"
curl -L "https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u322-b06/OpenJDK8U-jdk_${CPU_ARCH}_linux_hotspot_8u322b06.tar.gz" | tar xz -C /usr/lib/jvm
fi
echo "set java version to 8"
rm -f /usr/lib/jvm/default-jvm
ln -s /usr/lib/jvm/jdk8* /usr/lib/jvm/default-jvm
}
case "$1" in
17)
set_java_17
;;
16)
set_java_16
;;
11)
set_java_11
;;
8)
set_java_8
;;
*)
echo "set_java_ver <version>"
echo "set the java version for the container"
echo
echo "Available versions are 8, 11, 16 and 17"
exit 1
;;
esac
exit 0