Jak znaleźć wersję Java w folderze z zainstalowaną Javą?
On 16 lutego, 2021 by adminWersja java jest zainstalowana na moim komputerze z systemem Linux. Kiedy próbuję tego:
root @ test $: javac -version
Dał wynik jako:
javac jdk1.7.0_80.
Teraz mój problem polega na tym, że nie wiem, gdzie jest ten (1.7.0_80) folder java. Mam folder o nazwie „ java-7-oracle „w usr / lib / jvm. Podejrzewam, że będzie to folder z zainstalowaną wersją java.
Teraz mam java i chcę wiedzieć, która to wersja java?
Jak?
Odpowiedź
Myślę, że możesz to wszystko śledzić, sprawdzając, gdzie znajduje się twoja java pliki binarne połączone z.
#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
i wreszcie:
#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
moja instalacja java to:
/usr/lib/jvm/jre-1.7.0-openjdk.x86_64
Przypuszczam, że możesz śledzić dowolny plik binarny taki jak ten.
Odpowiedź
Sprawdzanie, który plik binarny jest wykonywany po wpisaniu samej nazwy, odbywa się za pomocą which
i readlink
możesz skondensować proces do jednej linii.
readlink -e $(which java)
readlink -e
wypisuje wartość dowiązania symbolicznego lub kanonicznej nazwy pliku, a -e zapewnia, że następuje rekurencyjnie po każdym składniku.
tony@trinity:~$ readlink -e $(which java) /usr/lib/jvm/java-6-openjdk-i386/jre/bin/java
uwaga: nie mam zainstalowanego javaca na maszynie, na której to przetestowałem, więc właśnie użyłem javy, ale powyższe będzie działać dla każdego pliku binarnego.
Wygląda na to, że pytasz o wersję oprogramowania java znajduje się w określonym folderze? W tym celu po prostu zrób to,
/full/path/java -version
, co uniemożliwia Linuksowi przeszukiwanie ścieżki i bezpośrednie znajdowanie pliku binarnego Java. W twoim przypadku
/usr/lib/jvm/java-7-oracle/javac -version
Odpowiedź
W Debianie i jego pochodnych można użyj:
update-alternatives --config java
Lub
update-alternatives --list java
Za pomocą opcji –config możesz ustawić wymagane java z listy alternatyw.
Dodaj komentarz