解决win10安装新旧java版本后,配置新版本环境变量后,java版本不生效问题

背景:

现在各种中间件需要的java版本都不一样,比如trino需要的是17+,而hudi编译的话最好不超过10,这样便有冲突。 所以存在jdk版本需要升降问题。

原来win10系统已经通过直接download官网的.exe文件安装了jdk17,现在需要降版本到jdk1.8,这时会出现一个问题,尽管你通过环境变量制定了jdk版本为现在安装的1.8:

然后powershell里面java -version一把发现:

java 复制代码
PS C:\Users\Administrator> java -version
java version "17.0.9" 2023-10-17 LTS
Java(TM) SE Runtime Environment (build 17.0.9+11-LTS-201)
Java HotSpot(TM) 64-Bit Server VM (build 17.0.9+11-LTS-201, mixed mode, sharing)

原因在于,通过.exe安装会有个优先级高的path,设置,基本上会在两个地方:

makefile 复制代码
C:\Program Files\Common Files\Oracle\Java\javapath
C:\Program Files (x86)\Common Files\Oracle\Java\javapath

这下面会看到有

复制代码
java.exe
javac.exe
javaw.exe

等。

粗暴一点的做法,就是把这些路径下的可执行文件删了,那么找不到,再会找到你设置的环境变量路径了:

java 复制代码
PS C:\Users\Administrator> java -version
java version "1.8.0_202"
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)
相关推荐
优秀的颜40 分钟前
计算机基础知识(第五篇)
java·开发语言·分布式
BillKu40 分钟前
Java严格模式withResolverStyle解析日期错误及解决方案
java
网安INF1 小时前
ElGamal加密算法:离散对数难题的安全基石
java·网络安全·密码学
AWS官方合作商2 小时前
在CSDN发布AWS Proton解决方案:实现云原生应用的标准化部署
java·云原生·aws
gadiaola3 小时前
【JVM】Java虚拟机(二)——垃圾回收
java·jvm
coderSong25685 小时前
Java高级 |【实验八】springboot 使用Websocket
java·spring boot·后端·websocket
Mr_Air_Boy6 小时前
SpringBoot使用dynamic配置多数据源时使用@Transactional事务在非primary的数据源上遇到的问题
java·spring boot·后端
豆沙沙包?7 小时前
2025年- H77-Lc185--45.跳跃游戏II(贪心)--Java版
java·开发语言·游戏
年老体衰按不动键盘7 小时前
快速部署和启动Vue3项目
java·javascript·vue
咖啡啡不加糖7 小时前
Redis大key产生、排查与优化实践
java·数据库·redis·后端·缓存