1. 程式人生 > >解決安裝jdk後使用cmd校驗出現has value '1.8',but'1.7' is required.的方法

解決安裝jdk後使用cmd校驗出現has value '1.8',but'1.7' is required.的方法

首先說一下怎麼安裝jdk,這個很簡單,首先上官網。

http://www.oracle.com/technetwork/java/javase/downloads/index.html

然後根據自己的系統以及系統的32/64位版本下載對應的JDK。

我下的是http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

版本號

 Java SE Development Kit 8u20

接下來是安裝,這個很簡單就不說了。

安裝完之後是環境變數的設定。總共三步:

這裡直接引用網上的大神的內容:

安裝Java JDK1.7最重要的也是最容易出錯的是設定環境變數。一共需要設定3個環境變數:Path、Classpath和Java_Home(大小寫無所謂)。

Windows系統中設定環境變數如下圖:

1.右擊“我的電腦”,選擇“屬性”。

2.點選“高階”選項卡,選擇“環境變數”。

3.在“系統環境變數”中設定上面提到的3個環境變數,如果變數已經存在就選擇“編輯”,否則選“新建”。

一、JAVA_HOME:指明JDK安裝路徑,就是剛才你安裝時JDK1.7時所選擇的路徑(假設安裝在C:\Program Files\Java\jdk1.7),此路徑下包括lib,bin,jre等資料夾(此變數最好設定,因為以後執行tomcat,Eclipse等都需要依靠此變數)。

二、Path:使得系統可以在任何路徑下識別java命令(此變數系統應該用,你找到後直接開啟然後把下面這句話全部複製並覆蓋就可以了),設為:%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin。

三、CLASSPATH:為java載入類(class or lib)路徑,只有類在classpath中java命令才能識別,設為【.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar 】,其中開頭的“.”表示當前路徑,一定要複製進去。

特別注意:

◆環境變數值的結尾沒有任何符號,大家儘量去複製我的語句。

環境變數配置好之後我們在cmd裡輸入java -version  

如果安裝一切正常的話應該會出現相應的版本資訊,不過有時候會出現不正常的情況。原因是你之前安裝的java比你安裝的jdk的版本低,就會出現這樣的情況:

Registry key 'Software/JavaSoft/Java Runtime Environment/CurrentVersion'


has value '1.8', but '1.7' is required.
Error: could not find java.dll
Error: could not find Java 2 Runtime Environment.

(根據你使用的版本,上面的1.8和1.7之類的數字可能會有些不一樣,但是處理方法應該是大同小異的)

網上最簡單的方法就是,解除安裝掉你裝的java或者jdk,然後找一個相對比較低的版本與之適配,然後就可以了。jdk是個很蛋疼的東西,版本太高反而不好用。

好了,下面說一下在網上摸索到的,不用重灌或者解除安裝的方法,那就是通過修改登錄檔的方式讓自己的那個高版本的jdk或者java的版本變低一些,這樣就可以適應了。

我們開啟登錄檔,然後找到這個路徑:

HKEY_LOCAL_MACHINE/SOFTWARE/JavaSoft/Java Runtime Environment

以我自己的為例,我的CurrentVersion是1.8,而Java7FamilyVersion卻是1.7.0_67,我把兩個都改成1.7之後儲存。

重新在cmd裡輸入一次java -version

得到的就是:

java version ''1.7.0_67"

Java<TM> SE Runtime Environment <build 1.7.0_67-b01>

Java HotSpot<TM> 64-Bit Server VM <build 24.65-b04, mixed mode>

好了,問題解決,希望可以幫到有需要的童鞋。