2016-10-05 84 views
0

我試圖找到JDK來設置jstatd,但我無法找到它。無法在Linux VM中找到JDK

當I型java -version我得到以下響應

java version "1.8.0_101" 
Java(TM) SE Runtime Environment (build 1.8.0_101-b13) 
Java HotSpot(TM) 64-Bit Server VM (build 25.101-b13, mixed mode) 

然後我試圖使用以下2個命令定位它:

  1. which java

響應:/usr/bin/java

我試圖cd,但我得到-bash: cd: /usr/bin/java: Not a directory

  • 然後我嘗試這個whereis java
    響應: java: /usr/bin/java /usr/bin/X11/java /usr/share/java /usr/share/man/man1/java.1.gz
  • 我再次嘗試CD吧。但仍然不是一個目錄。 它可以在哪裏安裝?

    +0

    答案之後,你說你在/ usr/lib/jvm中找到了它。這就是JVM所在的位置;你在問JDK。你應該做'哪個javac'。 –

    +0

    @Klitos Kyriacou是的,我也是這麼想的。所以我從來沒有檢查過'jvm'目錄。但是我在'jvm'目錄中找到了JDK。 – amitection

    回答

    1

    通常jdk's和jre的位於/usr/lib/java/usr/lib/jvm。可以肯定的是,做一個ls -la $(which java),它應該是一個符號鏈接指向真正的二進制文件(您可能必須重複此操作,通常如果有替代品,此鏈接可指向另一個鏈接)。

    +0

    謝謝!在/ usr/lib/jvm中找到它。我不知道它也可能在那裏。 – amitection

    3

    你確定java二進制不是一個符號鏈接(也許是二級)?我很確定它是。

    只需在/usr/bin/java上運行ls -l並發現實際位置。

    對於我來說,最終的實際位置是/usr/lib/jvm/java-7-openjdk-amd64/

    [email protected]:~$ java -version 
    java version "1.7.0_101" 
    OpenJDK Runtime Environment (IcedTea 2.6.6) (7u101-2.6.6-0ubuntu0.14.04.1) 
    OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode) 
    [email protected]:~$ which java 
    /usr/bin/java 
    [email protected]:~$ ls -l /usr/bin/java 
    lrwxrwxrwx 1 root root 22 Aug 14 16:23 /usr/bin/java -> /etc/alternatives/java 
    [email protected]:~$ ls -l /etc/alternatives/java 
    lrwxrwxrwx 1 root root 46 Aug 14 16:23 /etc/alternatives/java -> /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 
    [email protected]:~$ ls /usr/lib/jvm/java-7-openjdk-amd64/ 
    bin docs jre man 
    
    +0

    是的。我在/ usr/lib/jvm /中找到它。謝謝! – amitection

    1

    在/ usr /斌/ java的不是目錄文件。你可以找到最終的位置java文件如下;

    readlink -f $(which java); 
    

    默認位置JDK是usualy在/ usr/LIB/JVM/

    例如;我的配置是:

    [email protected]:$ ls -alrt /usr/bin/java 
    lrwxrwxrwx 1 root root 22 Dec 19 2014 /usr/bin/java -> /etc/alternatives/java 
    

    在/ usr /斌/ java的鏈接到/ etc /方案/ JAVA

    [email protected]:$ ls -alrt /etc/alternatives/java 
    lrwxrwxrwx 1 root root 39 Jul 7 2015 /etc/alternatives/java -> /usr/lib/jvm/java-8-oracle/jre/bin/java 
    

    的/ etc /方案/ java的鏈接到/ usr/lib中/ JVM/JAVA-8 -Oracle/JRE /斌/ java的

    [email protected]:$/usr/lib/jvm/java-8-oracle/jre/bin$ ls -arlt /usr/lib/jvm/java-8-oracle/jre/bin/java 
    -rwxr-xr-x 1 root root 7734 Mar 27 2016 /usr/lib/jvm/java-8-oracle/jre/bin/java 
    

    第一個字母 - 在-rwxr-XR-x表示該文件類型的文件沒有目錄。

    +1

    '/ etc/alternatives/java'是另一個符號鏈接,這個應該指向真正的一個。 –