2014-05-01 98 views
1

在我C:\Program files\java文件夾中我有三個文件夾:「Java的版本」命令可以顯示不同的版本比我有什麼

jdk1.6.0_45 
jre6 
jre7 

然而,在命令提示符下鍵入命令java -version給出了下面的輸出:

java version "1.7.0_51" 

這有什麼意義?我認爲它應該有輸出jdk1.6.0_45。這怎麼解釋?

+0

你爲什麼認爲應該打印出對應於Java 6的版本? –

+1

'java'命令調用Java *解釋器*而不是*編譯器*,因此可以在JRE包(即'jre7')中找到它。 – Elliott

+0

@Elliott如果我想用JDK7進行編譯,我應該可以做到嗎? –

回答

1

已經回答了這個在評論線程,但以供將來參考:

廣義上講,JDK包決定了Java編譯器的版本(javac),你必須和JRE包決定了Java解釋器的版本( java)你有。

當你輸入java或者在命令行javac所運行的版本是在您的PATH環境變量,它通常將指向從最新的軟件包的最新版本列出的版本(Java安裝做這行您)。

JDK將同時安裝相應的JRE,因此只需安裝最新的JDK即可擁有相同版本的javajavac

+0

安裝新的JDK(和JRE)後,是否需要'告訴Java''連接'到新的JDK?或者只是下載並安裝它就足夠了? –

+0

@Prog安裝程序應該自動更新你的'PATH'! – Elliott

0

你有一個jre7所以我認爲它是update 51

的Java默認情況下,作爲最新版本。

1

也許它發現有來自jre7文件夾內?您可以檢查您的PATH以查看其可執行文件的位置。

0

它也可以是JAVA_HOME ENV指向的位置和位置。

相關問題