[转]在windows上实现多个java jdk的共存解决办法
问题背景
公司项目中应用到的jdk环境为1.6,最近在家学习IntelliJ IDEA中sdk多环境配置时,想安装Jdk1.8,作为学习基础。那么问题来了,公司项目扩展不支持jdk1.8,为了既能满足公司项目开发环境,又能满足学习jdk1.8的需要,当然不能每一次都进行jdk的安装和卸载,需要探索另一种新方法。
分析问题
为了多快好省的解决当前的问题,我的想法是在windows中同时安装jdk1.6和jdk1.8,在中间进行切换,而不需要多次进行重复的安装和卸载,这样简单方便。
解决思路
- 第一步:在安装之前,本机的jdk环境为jdk1.6,执行:
java -version,显示当前jdk版本为1.6
第二步:安装jdk1.8,让两个jdk共存。
安装教程是:直接 下一步 and 下一步安装完成后,对jdk环境变量进行如下设置:JAVA8_HOME =jdk1.8的安装路径JAVA6_HOME =jdk1.6的安装路径JAVA_HOME = %JAVA6_HOME% (注意:如果你想切换jdk,就在此处设置即可)
设置后环境变量如下图所示:
- 第三步:添加
%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
[转]在windows上实现多个java jdk的共存解决办法的更多相关文章
- 在windows上实现多个java jdk的共存解决办法
转自:https://www.cnblogs.com/jianyungsun/p/6918024.html 分析问题 为了多快好省的解决当前的问题,我的想法是在windows中同时安装jdk1.6和j ...
- windows 上运行 sslocal 提示 libcrypto(OpenSSL) not found 解决办法
1.下载最新版ss客户端,使用pip安装的并不是最新版,去github下载最新版安装 2.安装openssl客户端 OpenSSL for Windows:https://wiki.openssl.o ...
- windows上安装python3里没有pip问题,解决办法!
安装python3: 1.下载python:https://www.python.org/downloads/ 2.安装: 3.安装完成进cmd里验证,但发现无pip包 所以操作步骤如下: 1.下 ...
- windows 2008 server 服务器远程桌面连接会话自动注销,在服务器上开掉的软件全部自动关闭的解决办法
windows 2008 server 服务器远程桌面连接会话自动注销,在服务器上开掉的软件全部自动关闭的解决办法:
- QQ能上,但是网页打不开的解决办法
QQ能上,但是网页打不开,解决办法是:netsh winsock reset
- Mac上安装第三方应用显示包资源破坏解决办法
Mac上安装第三方应用显示包资源破坏解决办法 步骤1:Spotlight搜索(快捷键:command+空格或右上角搜索的符号):搜索 “终端”步骤2:直接复制粘贴 sudo spctl --maste ...
- MyEclipse格式化JSP代码导致Java表达式<%= %>自动换行的解决办法
MyEclipse格式化JSP代码导致Java表达式<%= %>自动换行的解决办法: 可以将Java表达式<%= %>换成EL表达式.
- java.net.URISyntaxException的解决办法
java.net.URISyntaxException的解决办法 近日在用HttpClient访问抓取汇率时,为了省力,直接采用 String url = "http://api.liqwe ...
- 在windows上部署使用redis出现的问题及解决方法
在windows上部署使用Redis出现问题的解决方法 原文链接:https://www.cnblogs.com/herry52/p/5938902.html 下载Redis 在Redis的官网下载 ...
随机推荐
- 【SCM】关于Gradle与maven的几篇文章
Gradle官方文档:https://docs.gradle.org/current/userguide/installation.html#sec:download 使用 Gradle 命令行:ht ...
- 微信小程序 - 时间轴(组件)
更新日期: 2019/3/6:首次发布 2019/3/7:增加content和date自定义(具体使用看示例) 时间轴 参数: 1. data(新闻列表数据)- 2019/3/6 2. content ...
- Python 字典(联合内存、联合数组)
字典 Python有一个内建数据类型是字典(Dictionaries).字典在某些语言中可能称为“联合内存”("associative memories'')或“联合数组”("as ...
- springboot整合mybatis的两种方式
https://blog.csdn.net/qq_32719003/article/details/72123917 springboot通过java bean集成通用mapper的两种方式 前言:公 ...
- IDEA引入外部jar包的方法
在做发短信的功能(阿里大于)的时候,我只是吧jar包拷贝到了项目的external library. 拷贝进来之后我用junit写了test方法,可以完美发送短信到手机,但是我这是个web项目,然后我 ...
- Flink官网文档翻译
http://ifeve.com/flink-quick-start/ http://vinoyang.com/2016/05/02/flink-concepts/ http://wuchong.me ...
- mongobooster 的使用
mongobooster是mongodb的客户端工具 1.配置数据库 file->connect..->from URL 2.数据查询 选中数据库名,右击-Open Shell->输 ...
- C#代码实现邮箱验证C#中及一些常用的正则表达式
.验证用户名和密码:("^[a-zA-Z]\w{5,15}$")正确格式:"[A-Z][a-z]_[0-9]"组成,并且第一个字必须为字母6~16位: .验证电 ...
- StatefulSet和Deployment的区别
“Deployment用于部署无状态服务,StatefulSet用来部署有状态服务”. 具体的,什么场景需要使用StatefulSet呢?官方给出的建议是,如果你部署的应用满足以下一个或多个部署需求, ...
- Safari导入书签
1.打开Safari 这边safari会自动带出一些关联的浏览器,但如果你要导入的浏览器不在这里的话,就需要看第二步. 2.比如,这里我要从QQ浏览器导入,先打开QQ浏览器. 其他浏览器都类似,找到书 ...