Hvordan finder jeg ud af hvilken version af Java i Java-installeret mappe?
On februar 16, 2021 by adminEn version af java er installeret på min Linux-maskine. Når jeg prøver dette:
root @ test $: javac -version
Det gav resultatet som:
javac jdk1.7.0_80.
Nu er mit problem, jeg ved ikke, hvor den (1.7.0_80) java-mappe er. Jeg har en mappe med navnet “ java-7-oracle “i usr / lib / jvm. Jeg formoder, at det ville være mappen til den installerede version af java.
Nu har jeg en java-mappe, og jeg vil vide, hvilken version af java det er?
Hvordan ??
Svar
Jeg tror, du kan spore alt dette ved at kontrollere, hvor din java binære filer, der er knyttet til.
#which javac /usr/bin/javac #ls -ln /usr/bin/java lrwxrwxrwx. 1 0 0 22 Nov 27 04:54 /usr/bin/java -> /etc/alternatives/java #ls -ln /usr/bin/javac lrwxrwxrwx. 1 0 0 23 Nov 27 04:54 /usr/bin/javac -> /etc/alternatives/javac # ls -ln /usr/bin/javadoc lrwxrwxrwx. 1 0 0 25 Nov 27 04:54 /usr/bin/javadoc -> /etc/alternatives/javadoc
og til sidst:
#ls -ld /etc/alternatives/java lrwxrwxrwx. 1 root root 46 Nov 27 04:54 /etc/alternatives/java -> /usr/lib/jvm/jre-1.7.0-openjdk.x86_64/bin/java
derfor min Java-installation er:
/usr/lib/jvm/jre-1.7.0-openjdk.x86_64
Jeg formoder, at du kan spore enhver binær som denne.
Svar
At finde ud af, hvilken binær der udføres, når du kun skriver navnet, gøres ved hjælp af which
og ved hjælp af readlink
du kan kondensere processen til en enkelt linje.
readlink -e $(which java)
readlink -e
udskriver værdien af et symbolsk link eller kanonisk filnavn, og -e sikrer, at den følger hver komponent rekursivt.
tony@trinity:~$ readlink -e $(which java) /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java
Bemærk: Jeg har ikke javac installeret på den maskine, jeg testede dette på, så brugte bare java, men ovenstående fungerer for enhver binær.
Du ser også ud til at bede om at finde ud af, hvilken version af java er i en bestemt mappe? Til det gør du bare dette,
/full/path/java -version
som forhindrer Linux i at søge stien og finde java-binær direkte. I dit tilfælde
/usr/lib/jvm/java-7-oracle/javac -version
Svar
På Debian og dets derivater kan du brug:
update-alternatives --config java
Eller
update-alternatives --list java
Med –config-indstillingen kan du indstille krævet java fra listen over alternativer.
Skriv et svar