Windows管理多個java版本--解決'has value '1.8',but'1.7' is required'的方法


公司考慮到代碼的可持續維護性,要求全部使用java7,自己又想在空閑時間學一些java8的新特性,故在安裝完1.7之后又安裝了1.8,導致eclisp在啟動時報’has value ‘1.8’,but’1.7’ is required’的錯誤,在控制台使用Java -version進行查詢發現,依然會報’has value ‘1.8’,but’1.7’ is required’的錯誤,如下

1 C:>java -version 
2 Error: Registry key ‘Software\JavaSoft\Java Runtime Environment’\CurrentVersion’ 
3 has value ‘1.8’, but ‘1.7’ is required. 
4 Error: could not find java.dll 
5 Error: Could not find Java SE Runtime Environment.

這里,環境變量中只配置了1.7,並沒有對1.8配置任何環境變量值。 
經過一段時間的摸索,經如下幾步修改,即可將系統默認jdk恢復到1.7:

1、修改注冊表 

打開HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft 
分別修改Java Development kit及Java Runtime Environment中的CurrentVersion值為1.7 

2、替換文件

將%JAVA7_HOME%\bin里的 java.exe javaw.exe javaws.exe 復制到 C:\Windows/System32 及 C:\Windows\SysWOW64 並替換原有文件,將上述三個文件的快捷方式復制到 C:\ProgramData\Oracle\Java\javapath 並替換原有文件

如果不替換文件會出現以下問題、;

C:>java -version 
Error: 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 SE Runtime Environment.

 

3、執行java -version進行驗證

1 C:>java -version 
2 java version “1.7.0_25” 
3 Java(TM) SE Runtime Environment (build 1.7.0_25-b17) 
4 Java HotSpot(TM) 64-Bit Server VM (build 23.25-b01, mixed mode)

 


免責聲明!

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



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