如何安装多个jdk并方便切换系统jdk版本
如何安装多个jdk并方便切换系统jdk版本
前言
在安装myeclipse时,压缩包中附带1.8.0的jdk,顺便安装并配置环境变量后发现系统默认的jdk变为了1.8.0。随后发现eclipse只支持jdk11及以后的版本,所以决定写下这篇文章记录相关的操作,方便日后查看。
一、安装jdk8和jdk15
jdk8是我之前已经有的版本,而我现在最新的jdk版本就是jdk15,所以就下载的jdk15。
注:为了便于查找,需要将两个jdk都安装在同一个文件夹下

二、配置环境变量
1、准备工作
怎么做(两种方法):
(1)删除[C:\Windows\System32或C:\Program Files (x86)\Common Files\Oracle\Java\javapath或C:\Program Files\Common Files\Oracle\Java\javapath或C:\ProgramData\Oracle\Java\javapath]路径下的java.exe,javaw.exe,javaws.exe文件删除
(2)直接找到系统变量中的Path,编辑,找到上述的地址,将其删除
为什么要这么做:
在windows上安装了多个jdk版本之后,配置完某个版本的环境变量之后,还是不起作用。
原因:因为在安装一个新的版本的jdk时,系统会自动将java.exe,javaw.exe,javaws.exe三个可执行文件复制到了 [C:\Windows\System32或C:\Program Files (x86)\Common Files\Oracle\Java\javapath或C:\Program Files\Common Files\Oracle\Java\javapath或C:\ProgramData\Oracle\Java\javapath]中,由于这个目录在windows中的优先级高于JAVA_HOME设置的环境变量的优先级,所以所设置的环境变量不会起作用。(注:不同的电脑可能会有不同的情况,需要把这些路径都试验过)
2、在系统变量中设置CLASSPATH变量,新建变量值如下
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
3、在系统变量里面找到Path选中,编辑,在最前面加入以下变量值
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
4、在系统变量中添加三个JAVA_HOME变量
| 变量 | 路径 | 说明 |
|---|---|---|
| JAVA_HOME | %JAVA_HOME15(或8)% | 所对应的数字就是版本序号 |
| JAVA_HOME15 | 版本15对应的路径 | 依照所安装的版本为准(例:D:\jdk\jdk1.8.0_20) |
| JAVA_HOME8 | 版本8对应的路径 | 依照所安装的版本为准(例:D:\jdk\jdk15.0.2) |
三、如何切换各不同的版本
只需要将系统变量中%JAVA_HOME15%中的15改为已有的其他版本序号即可
四、如何检验jdk版本是否切换成功
win+R键打开命令窗口,输入java -version,回车查看现在的jdk版本
再输入javac -version,观察是否与java -version对应的版本是否相同,如果不同,应该还是准备工作的问题
注意:在更改完jdk版本之后,需要关闭命令行窗口,然后再次打开进行验证
如何安装多个jdk并方便切换系统jdk版本的更多相关文章
- 详解Ubuntu16.04安装Python3.7及其pip3并切换为默认版本(转)
原文:https://www.jb51.net/article/156927.htm
- mac python 切换系统默认版本
1 找到所安装python路径/usr/local/Cellar/python/2.7.13/bin2 vim ~/.bash_profile 3 添加如下代码: PATH="/usr/lo ...
- Windows系统JDK安装配置
JDK和JRE的安装 打开java的官方网站,下载安装程序,版本根据自己情况选择: 双击安装程序: 点击"下一步": 此处推荐默认路径安装,如果自定义安装目录,则需记住自定义的安装 ...
- 自动配置/切换/查看JDK环境变量
最近老是需要几个版本的JDK切换工作,于是网上收集资料整理,自己写了一个:自动配置/切换/查看JDK环境变量的批处理脚本.顺带3个JDK版本分别是:jdk1.6.0_43,jdk1.7.0_80,jd ...
- 关于win10系统1709版本安装JDK出现变量配置正确但仍有“java不是内部或外部命令”的解决办法
背景:联想拯救者R720笔记本,系统一键还原了,需要重新安装一部分软件,最基本的就是JDK,但今天在安装时遇到了问题,之前安装的1.8版本,没有仔细配置环境变量,这一次安装的是1.7版本的,仔仔细细配 ...
- Nginx+keepalived 脚本安装主从双机热备自动切换解决方案
Nginx+keepalived 脚本安装主从双机热备自动切换解决方案 2013-07-02 19:24:13 标签:filesnginx keepalived 原创作品,允许转载,转载时请务必以超链 ...
- svn服务端安装、迁移教程、Eclipse切换svn连接库
svn服务端安装.迁移教程.Eclipse切换svn连接库 安装教程 1.下载svn服务端安装程序 2.运行程序,安装 这里端口号根据自己定义,避免与其他程序冲突 到这里就安装完成 迁移教程 这里举例 ...
- 沉淀,再出发——安装windows10和ubuntu kylin15.04双系统心得体会
安装windows10和ubuntu kylin15.04双系统心得体会 一.安装次序 很简单,两种安装次序,"先安装windows后安装linux:先安装linux后安装wind ...
- 【Redis】安装 Redis接口时异常 ,系统ruby版本过低
场景 操作系统Linux CentOS 7.2,安装Redis接口时,使用命令:gem install redis ,用于系统ruby版本过低,报错“redis requires Ruby versi ...
随机推荐
- Jmeter(四十) - 从入门到精通进阶篇 - Jmeter配置文件的刨根问底 - 中篇(详解教程)
1.简介 为什么宏哥要对Jmeter的配置文件进行一下讲解了,因为有的童鞋或者小伙伴在测试中遇到一些需要修改配置文件的问题不是很清楚也不是很懂,就算修改了也是模模糊糊的.更有甚者觉得那是禁地神圣不可轻 ...
- Azure DevOps 跨账号连接 Azure 服务
一,引言 由于新申请的 Azure DevOps 账号中的私有项目不在享受托管代理提供的1800分钟的免费时间,又不想花钱付费,那我们只能另想版本解决没有并行作业的问题. -------------- ...
- 201871030117-李亚楠 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告
项目 内容 课程班级博客链接 课程班级 这个作业要求链接 作业要求 我的课程学习目标 1.体验软件项目开发中的两个人合作.练习结对编程:2.掌握Github协作开发程序的操作方法:3.熟悉编程语言的综 ...
- 通过Dapr实现一个简单的基于.net的微服务电商系统(三)——一步一步教你如何撸Dapr
目录:一.通过Dapr实现一个简单的基于.net的微服务电商系统 二.通过Dapr实现一个简单的基于.net的微服务电商系统(二)--通讯框架讲解 三.通过Dapr实现一个简单的基于.net的微服务电 ...
- 0ctf_2017_babyheap
0ctf_2017_babyheap 首先检查一下保护 IDA 分析好的代码如下 首先申请了一块内存地址用来存放结构体数组,地址随机. 堆题常见的几个功能.我们来看看add 这里申请内存用的是call ...
- Python 高级进阶知识(一)
参考 Python学习手册 第四版 1 from vs import import 模块 : 导入的一整个模块(python中模块对应一个py文件) 因为import使用一个变量名引用整个模块对象,所 ...
- babel配置文件.babelrc详解
一:理解 babel之配置文件.babelrc 基本配置项 1. 什么是babel? 它是干什么用的? ES6是2015年发布的下一代javascript语言标准,它引入了新的语法和API,使我们编写 ...
- 由一名保安引发的Java设计模式:外观模式
目录 应用场景 外观模式 定义 意图 主要解决问题 何时使用 优缺点 结构 保安的故事 应用场景 使用方要完成一个功能,需要调用提供方的多个接口.方法,调用过程复杂时,我们可以再提供一个高层接口(新的 ...
- 火狐兼容selenium版本解决
火狐和selenium不是很好兼容,下面提供一些我所知道的可以兼容的版本: 1. 火狐52+selenium 3.3 +geckodriver v0.15.0 2.火狐59+selenium 3.11 ...
- Day09_47_Map
Map 集合 Map集合** 继承关系** <interface>: Map(接口)<---HashMap(class)/HashTable(class)/SortedMap(子接口 ...