如何在Java安装文件夹中找到Java版本?

如何在Java安装文件夹中找到Java版本?

我的 Linux 机器上安装了 java 版本。当我尝试这个时:

root@test$: javac -版本

它给出的结果为:

javac jdk1.7.0_80。

现在我的问题是我不知道(1.7.0_80)java文件夹在哪里。我有一个名为“java-7-oracle” 在 usr/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您可以将进程压缩为一行。

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。

相关内容