[转]在windows上实现多个java jdk的共存解决办法

问题背景

公司项目中应用到的jdk环境为1.6,最近在家学习IntelliJ IDEA中sdk多环境配置时,想安装Jdk1.8,作为学习基础。那么问题来了,公司项目扩展不支持jdk1.8,为了既能满足公司项目开发环境,又能满足学习jdk1.8的需要,当然不能每一次都进行jdk的安装和卸载,需要探索另一种新方法。

分析问题

为了多快好省的解决当前的问题,我的想法是在windows中同时安装jdk1.6和jdk1.8,在中间进行切换,而不需要多次进行重复的安装和卸载,这样简单方便。

解决思路

  1. 第一步:在安装之前,本机的jdk环境为jdk1.6,执行:java -version ,显示当前jdk版本为1.6

  1. 第二步:安装jdk1.8,让两个jdk共存。安装教程是:直接 下一步 and 下一步安装完成后,对jdk环境变量进行如下设置:

    JAVA8_HOME =jdk1.8的安装路径
    JAVA6_HOME =jdk1.6的安装路径
    JAVA_HOME = %JAVA6_HOME% (注意:如果你想切换jdk,就在此处设置即可)

设置后环境变量如下图所示:

  1. 第三步:添加%JAVA_HOME%\bin到环境变量Path中,添加后的Path如下图所示:

环境变量配置后,但是安装以后出现以下问题:
通过java -version 查看显示,jdk显示为:jdk1.8
分析: 
当前jdk版本为1.8,这不科学,因为环境变量中配置的JAVA_HOME是1.6的路径,查看版本应该要是1.6的才对,现在变成1.8,jdk的环境变量未被改变,通过查询后发现问题:

在安装JDK1.8时(本机先安装jdk1.6再安装的jdk1.8),自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到了C:\Windows\System32目录,由于这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级。

解决方案:

删除C:\Windows\System32目录下的java.exe,删除即可。

注意: 如果Path中有 C:\ProgramData\Oracle\Java\javapath; ,删除之。否则会引变量错误。

  • 第四步:以上配置完成后,开启新 cmd 窗口,查看jdk版本显示正常,在环境变量中切换JAVA_HOME的值为:JAVA_HOME=%JAVA8_HOME% ,查看jdk版本,成功切换。如图所示:

总结

在经历了被社区编辑器各种虐待后,终于把教程写出来了,(还是怪自己,对社区编辑器不熟悉,以后会多加练习的)。苦苦熬了一晚上的夜终于弄出来了,PS:是被某只猫点醒的,虽然很LOW,还是要感谢他 , 阿里嘎多!! 
这篇教程还有很多不足、没有考虑到的地方,希望大家一起努力,去完善它,让它更完美。谢谢! 这篇文章我参照引用的有以下链接:

https://coderwall.com/p/gbek2g/java-6-and-java-7-on-windows
http://blog.sina.com.cn/s/blog_437ee9d00101isob.html

时间: 2024-07-30 13:14:58

[转]在windows上实现多个java jdk的共存解决办法的相关文章

关于 java 上传,下载和导入报java.lang.IllegalStateException异常解决办法

java.lang.IllegalStateException异常解决办法 最近在使用response.sendRedirect()时出现如下错误:java.lang.IllegalStateException            org.apache.catalina.connector.ResponseFacade.sendRedirect(ResponseFacade.java:423) 经过分析.查看jdk文档终于找到解决的办法,在response.sendRedirect()方法后加

index.jsp报错The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path的解决办法

1.index.jsp报错The superclass "javax.servlet.http.HttpServlet" was not found on the   Java Build Path的解决办法 主要是Javaweb工程类中没有添加Web 容器Runtime相关类导致: 第一: 右击项目名称->propertise->java build path->libraries->add libraries->server runtime->选

百度云盘上传文件和下载文件慢的解决办法

百度云盘上传文件和下载文件慢的解决办法 一:上传文件慢 1. 左下角点击搜索,输入cmd,右键以管理员身份运行 2. 在弹出的窗口中输入netsh interface tcp set global autotuning=disabled,回车可看到确定,代表执行成功.再继续在命令行中输入regedit,回车即打开注册表编辑器. 3. 进入注册表界面 路径:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\AFD,找到文件名为Parameters的文

eclipse faild to creat the java Virtual Machine的解决办法

打开eclipse的时候突然出现了 faild to creat the java Virtual Machine 解决办法:打开解压后的Eclipse文件夹,找到eclipse.ini配置文件 打开该文件,以下为用nodepad++打开为例 按照以上提示修改,然后重启eclipse即可. 原因:本机内存太小了,不够用,eclipse方法区(Perm Gen)用不了那么多,256M,设128就够了,这样eclipse觉得能保证MaxPerm为128的设置,所以可顺利启动eclipse.但是如果设

MyEclipse for Spring启动时报错"An internal error occurred during: 'Updating indexes'.Java heap space"的解决办法

问题 MyEclipse for Spring在启动时,报如下错误:An internal error occurred during: 'Updating indexes'.Java heap space 解决办法 对于这种问题,可以采用禁止MyEclipse的updating indexes的方法来解决. Window -> Preferences -> Myeclipse -> Maven4Myeclipse,禁用Download repository index updates

Maven项目下 java.lang.ClassNotFoundException 常规解决办法

网上很多要修改.class .project的比较麻烦有时候还不一定管用.下面的方法适合于项目用已经引用了jar,但是运行时却ClassNotFound,请用如下方法试试: 严重: Error configuring application listener of class org.springframework.web.context.ContextLoaderListener java.lang.ClassNotFoundException: org.springframework.web

Windows 7的CMD中 Telnet 无法执行的解决办法

Windows 7的CMD中 Telnet 无法执行的解决办法 在Windows 7的CMD中,执行telnet 192.168.1.10 80 会提示没有这个命令的提示,这是因为Win7默认是没有安装Telnet的(在以往的WINDOWS系统中都是默认安装的). 解决办法:在Win7中,进入控制面板,然后进入程序,点击“打开或关闭Windows功能”,然后在出来的功能树菜单中,找到"Telnet客户端",勾选它,然后安装即可,如下图: 安装完成后,然后再进Win7,你就会发现teln

windows和linux下读取文件乱码的终极解决办法!

乱码是个很恶心的问题. windows和linux读取txt文件,一旦读取了,编码发生改变,就无法再还原了,只有重启项目. 网上有很多方法都是读取文件头,方法很好,但是亲测都不能用(右移8位判断0xff的,取3个字节的-1,-2的,大体上网上最多就这两种). 后来偶然发现一个方法,CharsetPrinter. 这个方法需要引入jar包,非常好用. public static String guessEncoding(String filename) { try { CharsetPrinter

[原创]关于自带的sql developer修改java.exe版本的解决办法

第一次安装oracle11gR2后,就很好奇的点了一下,当点击应用程序开发下的sql developer后,就弹出一个窗口,要选择一个java.exe的路径,我就讲本机中的JDK1.7下的java.exe填进去了,然后自己关掉了界面,下次进入时,发现报出警告,最高版本不得高于1.6,而且没有提示更改,直接进入界面,可是没找到修改的位置,后来,想到软件安装的配置文件,于是,就开始寻找,终于找到了:E:\app\liangjian\product\11.2.0\dbhome_1\sqldevelop