修改java版本环境变量不生效

修改java版本环境变量不生效

起因

先上图说明问题(电脑含有多个java版本,因为需要维护很老的项目,需要切换至以前的java版本,当然也可以不用修改环境变量,直接指定)

image-20210922151649785

环境变量配置

image-20210922151728758

image-20210922152042896

正常 java -version 应该会输出 1.6 的版本,但是

image-20210922152224384

只能说就离谱,好吧。

查一下 java 位置

image-20210922152324094

明明是指定到了 1.6 版本的,但是 version 却是 1.7 的,莫非是上面 System32的导致的?

解决方法

方法一:修改注册表(不推荐)

  • 把 1.6 的 java.exe 复制到 System32 (C:\Windows\System32) 中,就上面的那俩地址

  • 再次使用 java -version

  • image-20210922152740460

  • 不是吧,注册表还有问题 (Registry key 'Software\JavaSoft\Java Runtime Environment\CurrentVersion'),那就修改注册表,找到相关路径
    计算机\HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft\Java Runtime Environment

  • 修改 CurrentVersion 改为 1.6

  • image-20210922152904933

  • 使用 java -version 显示正常

  • image-20210922152944029

方法二:还是修改环境变量(没想到吧)

  • where java 中看到,首先生效的是 System32中的 java,然后是 1.6 中的java,那把 1.6 的java提前,即可生效。
    移动 java_home 至 system32 之前
  • image-20210922153300202
  • 使用java -version和where java
  • image-20210922153351469
posted @   抱糖果彡  阅读(617)  评论(1编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示