1. 准备工作

下载jdk:

jdk1.7【http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html】

jdk1.8【https://pan.baidu.com/s/1nv668Mt】

【安装在/programefile/下面就是64位java,安装在/programfile(x86)/下就是32位】

2. 配置环境变量

①分别创建<JAVA_HOME_1.7>和<JAVA_HOME_1.8> 变量名和值。

CLASSPATH中添加<%JAVA_HOME_1.7%\lib;%JAVA_HOME_1.7%\lib\tools.jar;%JAVA_HOME_1.7%\lib\dt.jar;>

PATH中添加<%JAVA_HOME_1.7%\bin;%JAVA_HOME_1.7%\jre\bin;>

② 检验是否配置成功

运行cmd 输入 java -version 查看版本显示。

若如图所示 显示版本信息 则说明安装和配置成功。

以上,一个新的jdk即安装成功,虽然电脑可以安装多个jdk,但是使用时只能使用一个,因为要配置jdk的环境变量,它的值只能配置一个,或者配置多个以分号隔开,但只会读取最后一个jdk路径。

3. 切换不同的java版本

现在电脑配置jdk为1.7,那么如果要使用jdk1.8时,需要将系统变量CLASSPATHPATH中<1.7>替换为<1.8>即可。

切换完成后,通过cmd ---> java -version 查看版本

问题汇总:

问题1:JAVA_HOME从jdk 1.8变到jdk 1.7错误:Error: Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersi

改了JAVA_HOME,并且path值里的C:\ProgramData\Oracle\Java\javapath 也删了 
运行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.

解决:修改注册表信息

1. 打开开始菜单,搜索regedit,打开注册表

2. 打开”HKEY_LOCAL_MACHINE”

3. 点击”SOFTWARE”

4. 点击”JavaSoft”

5. 点击”Java Runtime Environment”

6. 选中”CurrentVersion” ,右键点击更改,改成”1.7”

7. 删除<C:\ProgramData\Oracle\Java\javapath>以及<C:\Windows\System32>下的java.exe 文件。

8. 重新验证java -version,版本显示正确

问题2:

jdk 1.8切换到jdk 1.7后,依然显示为 jdk 1.8版本

解决:

1.  删除<C:\ProgramData\Oracle\Java\javapath>以及<C:\Windows\System32>下的java.exe、javaw.exe、javaws.exe 文件;

2.  将jdk 1.8中的3个文件,复制到以上两个目录下

3.  cmd ---> java -version ,版本显示正确

Windows7 配置两个版本的java环境,可自由切换的更多相关文章

  1. windows下 两个版本的JDK环境变量进行切换 MARK

    我们平时在window上做开发的时候,可能需要同时开发两个甚至多个项目,有时不同的项目对JDK的版本要求有区别,为了简化操作,我们可以通过批处理文件来完成环境变量切换的任务.使用方法:阅读代码我们就会 ...

  2. SSD Cloud Hosting - Linode的配置和部署,搭建Java环境

    0.发牢骚 前一个月在淘宝购买了个Jsp空间,挺便宜的,才38元/年.部署了程序,然后ALIMAMA验证网站,一直提示验证失败.最后找卖家,他说可能是因为空间太慢,照他的推荐换了最好的空间,138元/ ...

  3. java运行机制、Jdk版本及Java环境变量

    一.语言特性 计算机高级语言按程序的执行方式可分为:编译型和解释型两种.编译型的语言是指使用专门的编译器,针对特定的平台(操作系统)一次性翻译成被该平台硬件执行的机器码,并包装成该平台可执行性程序文件 ...

  4. iOS - swift项目接入bugly - 报错, 配置符号表,下载Java环境,

    1.pod 安装,无需配置任何东西 2.终端找到路径: pod install 3.在 appdelegate 导入  import Bugly extension AppDelegate{ /// ...

  5. JENKINS里,如何为SLAVE配置多个不同的JAVA环境?

    今天遇到这个问题了, 原来在MASTER配置里可以统一管理的,不管这个路径有没有在MASTER上. 这样一来,JENKINS在编译时,会优先选用环境变量里的JAVA版本,然后才是MAVEN里的JAVA ...

  6. windows7配置python和django的开发环境

    直接上图,这是我在我的电脑配置windows7python和django开发环境的所有用到的软件 要求不高,只需要这几个软件的版本相一致就行, 需要注意的是软件安装时需要统一是32位或者64位的软件, ...

  7. Mariadb 10.2.8版本GTID主从环境搭建以及切换

    1.首先搭建主从 主环境:192.168.1.117 从环境:192.168.1.123 a.首先以二进制包的形式安装好MariaDB (忽略不计) b.配置环境的变量 通配 [mysqld] bin ...

  8. 【转】Ubuntu 14.04配置安装java环境和android开发环境(包括真机调试环境)

    原文网址:http://my.oschina.net/HalZf/blog/347351 总要记录下过程,不然老是会忘记掉-真老了.-_-! 一.配置安装ubuntu 64位java环境: 1.下载l ...

  9. 编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本]

    编写Spark的WordCount程序并提交到集群运行[含scala和java两个版本] 1. 开发环境 Jdk 1.7.0_72 Maven 3.2.1 Scala 2.10.6 Spark 1.6 ...

随机推荐

  1. GTK+重拾--09 GTK+中的组件(一)

    (一):写在前面 在这篇文章中主要介绍了GTK+程序中的各种构件,这是解说构件的第一个部分,另外一部分将在下一个小节中讲到. 构件是建立一个GUI程序的基础.在GTK+的长期发展过程中.一些特定的构件 ...

  2. 在vs2012中配置使用iisexpress

    在vs2012中配置使用iisexpress   vs2012支持基于iisexpress的web站点调试,这样可以尽可能与生产环境具备一样的环境. 但是,如果在vs2012中直接配置iis目录,通常 ...

  3. mysql优化30条建议

    1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...

  4. GPU hang

    最近做新项目 初期一直遇到个gpu hang的问题 就是command 提交过去gpu 就一直在那里 直到time out 也没什么别的错误提示 gpu debugger还抓不了 解决方案是 缩小之后 ...

  5. 【PA2012】【BZOJ4289】Tax

    Description 给出一个N个点M条边的无向图,经过一个点的代价是进入和离开这个点的两条边的边权的较大值.求从起点1到点N的最小代价. 起点的代价是离开起点的边的边权.终点的代价是进入终点的边的 ...

  6. jmap -histo pid 输出的[C [B [I [S methodKlass的含义

    转载于https://yq.aliyun.com/articles/43542 摘要: jmap -histo pid 输出结果样式  num     #instances         #byte ...

  7. CentOS6.4 安装 codeblocks-12.11

    FROM: http://blog.csdn.net/theegao/article/details/8750239 一.下载 1.   codeblocks-12.11-1.el6.x86_64.t ...

  8. Linux非阻塞IO(七)使用epoll重新实现客户端

    使用poll与epoll的区别主要在于: poll可以每次重新装填fd数组,但是epoll的fd是一开始就加入了,不可能每次都重新加入 于是采用这种策略: epoll除了listenfd一开始就监听r ...

  9. Vector的一种实现(二)

      增加了逆置迭代器的实现 以及swap功能   完整代码如下: #ifndef VECTOR_H_ #define VECTOR_H_ #include <stddef.h> #incl ...

  10. 最小化JavaScript代码

    1.去除不必要的格式符.空白符.凝视符. 这个操作.事实上能够理解为是一种格式化.尽管它操作的结果事实上是去除掉原始文件的那些格式. 2.模糊(Obfuscation)处理JAVASCRIP脚本源码. ...