Saya pikir Anda dapat melacak semua ini dengan memeriksa ke mana binari Java Anda ditautkan.
#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
dan terakhir:
#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
oleh karena itu, instalasi java saya adalah:
/usr/lib/jvm/jre-1.7.0-openjdk.x86_64
Saya kira Anda dapat melacak biner apa pun seperti ini.
Mencari tahu biner mana yang dijalankan saat Anda hanya mengetik nama dilakukan dengan menggunakan which
, dan menggunakan readlink
Anda dapat memadatkan proses menjadi satu baris.
readlink -e $(which java)
readlink -e
mencetak nilai tautan simbolis atau nama file kanonis, dan -e memastikannya mengikuti setiap komponen secara rekursif.
[email protected]:~$ readlink -e $(which java)
/usr/lib/jvm/java-6-openjdk-i386/jre/bin/java
catatan:Saya tidak menginstal javac pada mesin tempat saya menguji ini, jadi gunakan saja java, tetapi cara di atas akan berfungsi untuk semua biner.
Anda juga tampaknya bertanya untuk mengetahui versi java mana yang ada di folder tertentu? Untuk itu Anda cukup melakukan ini,
/full/path/java -version
yang mencegah Linux mencari jalur dan menemukan biner java secara langsung. Dalam kasus Anda,
/usr/lib/jvm/java-7-oracle/javac -version