Innhold
1 Tilgjengelige Java-versjoner
Viktig
Oracle har endret lisensbetingelsene for Oracle Java, og derfor er ikke lenger Oracle Java en del av Red Hat Enterprise Linux.
Hovedsakelig er det kun OpenJDK som er tilgjengelig på RHEL. RHEL7 har en versjon fra IBM som vi ikke anbefaler å bruke.
2 Installere Java
For å se hvilke Java-pakker som er tilgjengelig (og installert) på en maskin, kjør følgende kommando:
sudo yum list java-*-openjdk.x86_64
Java-pakkene har navn som følger: java-<versjon>-<type>. Her er noen eksempler:
- java-1.8.0-openjdk
- java-11-openjdk
- java-17-openjdk
- java-21-openjdk
- java-latest-openjdk
Pakkene "java-latest" bør kun brukes til test. For øvrig bør man bruke siste versjon (her: java-21-openjdk). For å installere:
sudo yum install java-21-openjdk
Men de fleste trenger kun headless-varianten:
sudo yum install java-21-openjdk-headless
3 Bytte mellom Java-versjoner
Pakkenavnet for Java-pakkene er ukonvensjonelt ved at det inkluderer versjon i selve navnet for pakken. Dette er gjort slik at det er mulig å ha mer enn en Java installert samtidig. Java-pakkene bruker en mekanisme som heter alternatives for å sette hvilken Java som /usr/bin/java peker til og som dermed er standard for maskinen. For å endre hvilken Java som /usr/bin/java peker til (eksempel):
$ sudo alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- *+ 1 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.22.0.7-2.el9.x86_64/bin/java) 2 java-21-openjdk.x86_64 (/usr/lib/jvm/java-21-openjdk-21.0.2.0.13-1.el9.x86_64/bin/java) Enter to keep the current selection[+], or type selection number: 2
Det kan være andre java-ting som man også ønsker å justere. Fullstendig liste får man med:
sudo alternatives --list
Foruten kommandoen "alternatives", kan man kan sjekke hvilken versjon som er satt som standard med java -version. Eksempel:
$ java -version openjdk 21.0.2 2024-01-16 LTS OpenJDK Runtime Environment (Red_Hat-21.0.2.0.13-1) (build 21.0.2+13-LTS) OpenJDK 64-Bit Server VM (Red_Hat-21.0.2.0.13-1) (build 21.0.2+13-LTS, mixed mode, sharing)
Man kan også bruke readlink. Eksempel:
$ readlink -f /usr/bin/java /usr/lib/jvm/java-21-openjdk-21.0.2.0.13-1.el9.x86_64/bin/java
4 Sette JAVA_HOME
Noen applikasjoner forventer at JAVA_HOME er satt. Man kan sette denne til katalogen hvor JRE eller JDK er installert, men det enkleste er å sette den slik:
export JAVA_HOME="/usr"
Dette forutsetter at /usr/bin/java er satt til å peke på riktig Java. Se avsnittet over.