JavaインストールフォルダでJavaのバージョンを見つける方法は?

JavaインストールフォルダでJavaのバージョンを見つける方法は?

私のLinuxコンピュータにJavaバージョンがインストールされています。私がこれをしようとすると:

root@test$: javac -version

結果は次のとおりです。

javac jdk1.7.0_80.

今私の問題は(1.7.0_80)Javaフォルダがどこにあるのかわからないということです。 'というファイルがあります。Java-7-Oracleusr/lib/jvmにあります。インストールされているJavaバージョンのフォルダのようです。

これでJavaフォルダがありますが、どのバージョンのJavaかを知りたいです。

どのように? ?

答え1

Javaバイナリが接続されている場所を確認すると、これらすべてを追跡できると思います。

       #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

ついに:

#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

だから私のJavaインストールは次のようになります。

   /usr/lib/jvm/jre-1.7.0-openjdk.x86_64

このようなバイナリを追跡できると思います。

答え2

名前だけを入力すると、どのバイナリが実行されているかを確認でき、whichそれを使用するとreadlinkプロセスを1行に圧縮できます。

readlink -e $(which java)

readlink -eシンボリックリンクまたは標準ファイル名の値を印刷し、-eは各コンポーネントに繰り返し従うようにします。

tony@trinity:~$ readlink -e $(which java)
/usr/lib/jvm/java-6-openjdk-i386/jre/bin/java

注:テストしたコンピュータにはjavacがインストールされていないため、ちょうどjavaを使用しましたが、上記のコードはすべてのバイナリで動作します。

また、特定のフォルダでJavaのバージョンを探すように求めているようですか?そのためにはこうすればいいです。

/full/path/java -version

これにより、Linuxがパスを直接検索してJavaバイナリを見つけるのを防ぎます。あなたに関する限り、

/usr/lib/jvm/java-7-oracle/javac -version

答え3

Debianとその派生物では、次のものを使用できます。

update-alternatives --config java

または

update-alternatives --list java

--config オプションを使用すると、代替リストで必要な Java を設定できます。

関連情報