Sådan installeres Java på CentOS 8

Java er et af de mest populære programmeringssprog, der bruges til at opbygge forskellige typer applikationer og systemer.

der er to forskellige implementeringer af Java, openjdk og Oracle Java, med næsten ingen forskelle mellem dem, bortset fra at Oracle Java har et par ekstra kommercielle funktioner. Oracle Java License tillader kun ikke-kommerciel brug af programmet, såsom personlig brug og udviklingsbrug. OpenJDK er en open source-implementering af Java-platformen.

standard CentOS 8 repositories omfatter de seneste to store Java LTS versioner, Java 8 og Java 11.

i denne vejledning forklarer vi, hvordan du installerer en eller flere Java (openjdk) versioner på CentOS 8, og hvordan du indstiller standard Java via alternativer.

installation af OpenJDK 11 #

den generelle anbefaling er at installere den nyeste Java LTS-version (JDK 11) version. Nogle Java-baserede applikationer kræver muligvis en bestemt version af Java, så du skal muligvis konsultere applikationsdokumentationen.

for at installere OpenJDK 11 på CentOS 8 skal du køre følgende kommando som root eller bruger med sudo-privilegier:

sudo dnf install java-11-openjdk-devel

Når installationen er afsluttet, kan du bekræfte den ved at kontrollere Java-versionen:

java -version

udgangen skal se sådan ud:

openjdk version "11.0.4" 2019-07-16 LTSOpenJDK Runtime Environment 18.9 (build 11.0.4+11-LTS)OpenJDK 64-Bit Server VM 18.9 (build 11.0.4+11-LTS, mixed mode, sharing)

det er det! Du har installeret Java på dit CentOS 8-system.CentOS 8 understøtter også en hovedløs version af OpenJDK, der giver en minimal Java-runtime, der er nødvendig til udførelse af applikationer uden en grafisk brugergrænseflade (intet tastatur, mus og displaysystemer understøtter). Denne version er mere velegnet til serverapplikationer, da den har færre afhængigheder og bruger færre systemressourcer.

for kun at installere den hovedløse OpenJDK 11 type:

sudo dnf install java-11-openjdk-headless

Hvis du allerede har installeretjava-11-openjdk-devel, installeres den hovedløse pakke som en afhængighed.

installation af openjdk 8 #

Java 8, Den Tidligere Java LTS-version, understøttes stadig og bruges i vid udstrækning. Hvis din applikation kræver Java 8, kan du installere den ved at skrive følgende kommando:

sudo dnf install java-1.8.0-openjdk-devel

bekræft installationen ved at kontrollere Java-versionen:

java -version

udgangen skal se sådan ud:

openjdk version "1.8.0_222"OpenJDK Runtime Environment (build 1.8.0_222-b10)OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

for minimal Java Runtime, installer java-1.8.0-openjdk-headless pakken.

Indstilling af standard Java-Version #

Hvis du installerede flere Java-versioner på dit CentOS-system, kan du bruge alternativsystemet til at indstille, hvilken Java-version der skal bruges, når du skriverjava i terminalen.

for at kontrollere, hvilken Java-version der er indstillet som standard, skal du skrive:

java -version

Hvis du vil ændre standardversionen, skal du bruge kommandoenalternatives:

sudo alternatives --config java

udgangen vil se noget ud som nedenfor:

There are 2 programs which provide 'java'. Selection Command----------------------------------------------- 1 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.4.11-0.el8_0.x86_64/bin/java)*+ 2 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre/bin/java)Enter to keep the current selection, or type selection number: 

en liste over alle installerede Java-versioner udskrives på skærmen. Indtast nummeret på den version, du vil bruge som standard, og tryk på Enter.

Du kan også ændre standardjavac version:

sudo alternatives --config java

javac er et kommandoværktøj til kompilering af Java-programmer.

Indstilling af miljøvariablen JAVA_HOME #

JAVA_HOME miljøvariablerbruges af nogle Java-applikationer til at bestemme Java-installationsstedet og angive, hvilken Java-version der skal bruges til at køre applikationen.

for at indstilleJAVA_HOME variablen pr.bruger skal du tilføje den til~/.bashrc eller enhver anden konfigurationsfil, der indlæses, når brugeren logger ind. For en systemomfattende indstilling skal du bruge et script inde i /etc/profile.d-mappen.

forudsat at du vil indstille JAVA_HOME til OpenJDK 8 tilføj følgende linje i slutningen af filen:

/etc/profile.d/java.sh
JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk"

for ændringer, der træder i kraft på din nuværende skal, kan du enten logge ud og logge ind eller bruge kommandoensource:

source /etc/profile.d/java.sh

Kontroller, atJAVA_HOME miljøvariabel blev korrekt indstillet:

echo $JAVA_HOME

udgangen skal vise stien til Java-installationen:

/usr/lib/jvm/java-1.8.0-openjdk

Du kan også indstilleJAVA_HOME i applikationskonfigurationen, systemd-enhedsfilen eller på kommandolinjen, når programmet startes.

for eksempel at køre Maven ved hjælp af Java 8 ville du skrive:

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk mvn --version
...Java version: 1.8.0_222, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre...

konklusion #

CentOS 8 understøtter to store Java-versioner, Java 8 og Java 11, som kan installeres ved hjælp af dnf pakke manager.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.