JDK版本更改,修改环境变量不生效

问题:

当使用安装版本JDK后,想要更改系统环境变量时,直接更改JAVA_HOME无效。

原因:

当使用安装版本的JDK程序时(一般是1.7版本以上),在安装结束后安装程序会自动将java.exe、javaw.exe、javaws.exe三个可执行文件复制到C:\Windows\System32目录,这个目录在WINDOWS环境变量中的优先级高于JAVA_HOME设置的环境变量优先级,故此直接更改JAVA_HOME会无效。

另外,JDK1.8安装版本,还会在C:\ProgramData\Oracle\Java目录中生成一些配置文件,并同时将此目录写到环境变量中的Path中。

解决方案:

删除C:\Windows\System32目录下java.exe、javaw.exe、javaws.exe三个文件。

删除Path中C:\ProgramData\Oracle\Java\javapath配置

时间: 2024-10-11 18:11:24

JDK版本更改,修改环境变量不生效的相关文章

【Java】移动JDK路径后,修改环境变量不生效 Error: could not open `C:\Program Files\Java\jre1.8.0_131\lib\amd64\jvm.cfg'

场景: JDK原先装在C盘的,现在移动到了D盘,并在环境变量修改了%JAVA_HOME%的新路径,但是CMD中输入java后依然报错. Error: could not open `C:\Program Files\Java\jre1.8.0_131\lib\amd64\jvm.cfg' 解决办法: 在环境变量PATH中把下面这段挪到PATH最前面即可.记得要关闭再打开CMD后再输入java检查. %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; 再不行的话也许可以试试这

window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法

本机已经安装了jdk1.7,而比较早期的项目需要依赖jdk1.6,于是同时在本机安装了jdk1.6和jdk1.7. 安装jdk1.6前,执行java -version得到 C:\Users\liuxiang2>java -version java version "1.7.0_21" Java(TM) SE Runtime Environment (build 1.7.0_21-b11) Java HotSpot(TM) Client VM (build 23.21-b01, m

Windows系统上安装多个版本jdk,修改环境变量不生效

本机已经安装了jdk1.6,而比较早期的项目需要依赖jdk1.5,于是同时在本机安装了jdk1.5和jdk1.6. 安装jdk1.5前,执行 java -version 得到java version "1.6.0_38"?Java(TM) SE Runtime Environment (build 1.6.0_38-b05)?Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode) 安装完jdk1.5,并修改环境变量

java_Mac安装多个JDK版本并设置环境变量

JDK6.JDK7.JDK8三个版本的汇总地址:https://pan.baidu.com/s/1pKSYv8Z 安装 JDK6安装 JDK6下载地址 见网盘 安装完毕后确认版本 JavaForOSX2014-001.dmg contains Javafor Mac OS X (1.6.0_65-b14-462).It will be installed to * /System/Library/Java * and /System/Library/Frameworks while Oracle

Linux中修改环境变量及生效方法

方法一: 在/etc/profile文件中添加变量[对所有用户生效(永久的)] 用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”. export PATH="$PATH:/usr/local/subversion/bin/" 要让刚才的修改马上生效,需要执行以下代码 # source /etc/profile 方法二: 在用户目录下的.bash_profile文件中增加变量[对单一用户生效(永久的)] 用VI在用户目录下的.ba

Centos中修改环境变量,导致命令丢失的解决办法

本人初学linux,在安装jdk时,修改环境变量导致大量命令丢失? 其实命令还是在系统当中,不过由于环境变量错误,导致修改命令无法通过之前的方式找到,所以出现上面的问题. 这时我们可以通过绝对路径来调用命令,将环境变量修改回来. /bin/vi 这是vi编辑器的绝对路径 之后的问题相信就能自己解决了.

windows 安装多个版本的jdk后修改 环境变量不起作用

本机已经安装了jdk1.6,而比较早期的项目需要依赖jdk1.5,于是同时在本机安装了jdk1.5和jdk1.6. 安装jdk1.5前,执行java -version得到java version "1.6.0_38"Java(TM) SE Runtime Environment (build 1.6.0_38-b05)Java HotSpot(TM) 64-Bit Server VM (build 20.13-b02, mixed mode) 安装完jdk1.5,并修改环境变量JAVA

Linux CentOS 6.5 使用自带jdk修改环境变量

首先声明,默认jdk指我们安装完CentOS后系统自带jdk,自己下载安装的jdk只需要下载,解压即可,之后步骤与此文一致 1.查看我们默认jdk的位置 指令: [html] view plain copy which java 我们去看一下发现是一个超链接,继续追踪 超链接,指令: [html] view plain copy ls -lrt 继续追踪 出现了jdk,我们过去看看 我们找到了初始的jdk1.7位置(即系统当前jdk),而我们需要的jdk1.6版本的位置,即jre-1.6.0-o

win系统环境变量中增加或修改环境变量后快速生效

win系统环境变量中增加或修改环境变量后,需重启系统才能使之生效. 下面介绍一种方法: 以修改环境变量"PATH"为例,修改完成后,进入DOS命令提示符,输入:set PATH=C: ,关闭DOS窗口.再次打开DOS窗口,输入:echo %PATH% ,值已经生效. 不用担心DOS窗口中的修改会影响环境变量的值,DOS窗口中的环境变量只是Windows环境变量的一个副本而已.但是对副本的修改却会引发Windows环境变量的刷新,这正是我们想要的!