CentOS Stream 8
Sponsored Link

OpenJDK 17 : Install2021/09/23

 
Install OpenJDK 17.
[1] If you need only JRE, Install only [java-17-openjdk] package,
but if you need compiler, Install [java-17-openjdk-devel] package, too.
[root@dlp ~]#
dnf -y install java-17-openjdk java-17-openjdk-devel
[root@dlp ~]#
cat > /etc/profile.d/java.sh <<'EOF'
export JAVA_HOME=$(dirname $(dirname $(readlink $(readlink $(which java)))))
export PATH=$PATH:$JAVA_HOME/bin
EOF
[root@dlp ~]#
source /etc/profile.d/java.sh
[root@dlp ~]#
java --version

openjdk 17-ea 2021-09-14
OpenJDK Runtime Environment 21.9 (build 17-ea+33)
OpenJDK 64-Bit Server VM 21.9 (build 17-ea+33, mixed mode, sharing)

# verify to create test program

[root@dlp ~]# cat > java_test.java <<'EOF'
class java_test {
    public static void main(String[] args) {
        System.out.println("Hello Java World !");
    }
}
EOF 

[root@dlp ~]#
javac java_test.java

[root@dlp ~]#
java java_test

Hello Java World !
[2] If you installed multiple version of Java from CentOS official repository, it's possible to switch them with [alternatives].
[root@dlp ~]#
alternatives --config java


There are 2 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
*+ 1           java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.0.0.33-0.5.ea.el8.x86_64/bin/java)
   2           java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.12.0.7-0.el8_4.x86_64/bin/java)

Enter to keep the current selection[+], or type selection number: 1

[root@dlp ~]#
alternatives --config javac


There are 2 programs which provide 'javac'.

  Selection    Command
-----------------------------------------------
*+ 1           java-17-openjdk.x86_64 (/usr/lib/jvm/java-17-openjdk-17.0.0.0.33-0.5.ea.el8.x86_64/bin/javac)
   2           java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.12.0.7-0.el8_4.x86_64/bin/javac)

Enter to keep the current selection[+], or type selection number: 1

[root@dlp ~]#
java --version

openjdk 17-ea 2021-09-14
OpenJDK Runtime Environment 21.9 (build 17-ea+33)
OpenJDK 64-Bit Server VM 21.9 (build 17-ea+33, mixed mode, sharing)
[root@dlp ~]#
javac --version

javac 17-ea
Matched Content