java -version查看版本不匹配和JDK、JRE與JVM的關系


     因為新的需要所以最近在本地安裝了 jdk7,所以隨之而來的還有環境配置的問題,但是安裝了jdk,配置了環境變量之后,在dos中輸入 java -version之后,出現的是我之前安裝的jdk 1.8.0的版本,希望能幫助有需要的小伙伴避坑吧~

    1.進入dos,輸入win+R 進入;

    2.輸入  echo %JAVA_HOME% ,顯示的是我們本地安裝的jdk路徑,如下圖所示:

         

    3.輸入 java -version ,查看的是本地 jre路徑(下面有介紹jdk jre jvm),偶就是兩個版本查出來不一致,所以搞得兩個頭大,如果你查出來的兩個版本一致,那恭喜你~

    4.在本地環境設置的系統變量的path路徑里面將  %JAVA_HOME%\bin 移到 %JAVA_HOME%\jre\bin 前面(最好移到最前面),如下圖:

           

           點擊進入:

           

           5.重新打開dos,輸入 java -version ,兩個版本就一致啦~

ps:補充一下java中jdk,jre,jvm之間的關系,一團漿糊有木有~,反正偶是啦

    層次關系:JDK>JRE>JVM

    1.JVM:Java Virtual Machine,即Java虛擬機;JVM用來關聯所有操作系統,它能操作所有操作系統,向上提供統一接口,也就是JavaAPI,開發人員只需要面向JVM編程,因此我們編寫的程序能在任意平台上運行,JVM是Java跨平台的核心;具體的可以參考https://www.cnblogs.com/pigpdong/p/10899821.html

    2.JRE:Java Runtime Environment,即Java運行環境;前面也說JVM用來操作操作系統,所以JRE是java程序能夠被java虛擬機調用和執行的運行環境,JRE包括兩個主要部分:jvm的標准實現和Java的一些基本類庫;

    3.JDK:java開發工具包,是java開發的核心,基本的組件包括:

          ·javac – 編譯器,將源程序轉成字節碼 
          ·jar – 打包工具,將相關的類文件打包成一個文件 
          ·javadoc – 文檔生成器,從源碼注釋中提取文檔 
          ·jdb – debugger,查錯工具 

      JDK包含完整的JRE、基本的類庫(所以我們隨着JDK的更新有些方法也要更改)、Java工具

      JDK的三個版本(下次在官網下載的時候就不會懵逼了):

           SE(J2SE),standard edition,標准版,是我們通常用的一個版本 
           EE(J2EE),enterpsise edtion,企業版,使用這種JDK開發J2EE應用程序, 
           ME(J2ME),micro edtion,主要用於移動設備、嵌入式設備上的java應用程序 

大家也可以參考這篇文章https://www.cnblogs.com/jpfss/p/9355062.html

 補充:既然層次關系是JDK>JRE>JVM,我們來看看安裝JDK之后的目錄吧~:

       

    JDK的目錄下面有一個jre的文件,這個就是JRE啦,大家沒事也可以多看看,看完目錄應該能有更深刻的理解,目錄如下:

        

 希望這篇文章能幫助到有需要的小伙伴~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM