Hvordan sette Java_home på CentOS

Datakrimkonsept

Noen Java-programmer bruker variabelen JAVA_HOME for å finne Java Runtime Environment.

Bildekreditt: scyther5/iStock/Getty Images

Sett opp CentOS-systemet slik at Java-applikasjonene dine vet nøyaktig hvor de skal finne de kjørbare filene og bibliotekene de trenger for å kjøre. Hvis du har root- eller administratorrettigheter, sett $JAVA_HOME-variabelen til Javas katalogplassering for alle brukere i hele systemet. Hvis du bare trenger å angi banen for ikke-root-brukerøktene dine, legg til baneinformasjonen i din personlige Bash-shell-profil.

Sett JAVA_HOME System-Wide

Trinn 1

Start en rotterminaløkt og endre deretter kataloger til /usr/lib/jvm-mappen. Hvis du foretrekker det, kan du også logge på systemet ditt som root.

Dagens video

Steg 2

Vis mappens innhold ved å skrive følgende kommando ved Bash shell-ledeteksten og deretter trykke "Enter:"

ls -l

Oppføringen vil vise flere symbolske lenker og en enkelt mappe som inneholder Java-pakkefilene dine. Java-mappen installert på CentOS 7-systemer kan ha et navn som ligner på følgende:

java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Den fullstendige banen til denne mappen vil imidlertid være:

/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Trinn 3

Skriv kommandoen Bash shell Export som vil sette $JAVA_HOME-variabelen til Java-mappens fulle bane, og trykk deretter "Enter". Kommandoen din skal ligne følgende:

eksport JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Hvis du skriver "echo $JAVA_HOME" (uten anførselstegn) på kommandolinjen og trykker "Enter", vil skallet vise JAVA_HOME-banen. Baneendringen vil imidlertid gå tapt når du starter på nytt, med mindre du legger til endringen i systemprofilen som ligger i /etc-mappen.

Trinn 4

Bytt kataloger til /etc og åpne deretter "profil"-tekstfilen ved å bruke en editor som Vi, Emacs eller Nano. Profiltekstfilen inneholder systemomfattende bash-shell-kommandoer, parametere og variabel tilgjengelig for alle brukere.

Trinn 5

Rull til en tom linje nær bunnen av filen, skriv inn den samme eksportkommandoen du skrev inn ved shell-ledeteksten, lagre filen og avslutt deretter redigeringsprogrammet. Når du eller en annen bruker logger på en CentOS-sesjon, vil JAVA_HOME-variabelen bli satt.

JAVA_HOME for enkeltbrukere

Trinn 1

Start filbehandleren og naviger deretter til /usr/lib/jvm-mappen. Filbehandlingen skal vise ikonene for én mappe og flere symbolske lenker.

Steg 2

Velg mappen og trykk deretter "Ctrl-C" for å kopiere den til utklippstavlen. Ett element utklippstavlen vil inneholde er den fullstendige katalogbanen til Java-mappen.

Trinn 3

Som en vanlig, ikke-rootbruker, start Gedit og åpne deretter tekstfilen ".bash_profile" som ligger i Hjem-mappen. Innstillinger inkludert i .bash_profile angis hver gang du logger på systemet ditt.

Trinn 4

Klikk på en tom linje nær bunnen av filen og trykk deretter "Ctrl-V" for å lime inn Java-mappens fulle bane. Den limte linjen skal ligne følgende:

file:///usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

For å sette banen i et format du kan bruke, slett "file://"-delen. Resultatet skal ligne følgende

/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Trinn 5

Legg til Bash shell-eksportkommandoen til denne linjen som tildeler banen til $JAVA_HOME, lagre endringene og avslutt Gedit. Den siste banekommandoen i .bash_profilen din skal ligne på følgende linje:

eksport JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el7_0.x86_64

Trinn 6

Logg ut av CentOS-økten og logg på igjen, sett $JAVA_HOME-variabelen til Javas nåværende plassering.

Tips

Rediger .bash_profile- eller /etc/profile-filene dine hver gang systemets Java-pakke oppdateres. Kjør følgende kommando ved en rot- eller normal brukerterminal-ledetekst for å sammenligne gjeldende versjon av Java med versjonen referert til av $JAVA_HOME-variabelen.

java -versjon

Advarsel

Informasjonen i denne artikkelen gjelder for CentOS 7 og CentOS 6.5. Prosedyrer kan variere noe eller betydelig med andre versjoner av CentOS.