解决安装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 SE Runtime Environment >

Java HotSpot 64-Bit Server VM


好了,问题解决,希望可以帮到有需要的童鞋。

你可能感兴趣的:(Java)