如何在Windows中卸载旧Java环境_Java环境清理与重装说明

Java是否仍在运行需先执行java -version和javac -version验证;若提示命令不存在,可能已卸载或环境变量失效,须检查“应用和功能”中所有Java相关条目并卸载,再清理JAVA_HOME、Path、注册表JavaSoft项及磁盘残留文件夹。

确认当前Java是否还在运行

别急着删,先看系统里到底还有没有Java在“装死”。打开命令提示符(Win + R → 输入 cmd),执行:

java -version
javac -version

如果返回版本号(比如 java version "1.8.0_391"),说明Java仍被识别;如果提示 'java' 不是内部或外部命令,那可能已卸载干净——但也可能是环境变量断了、而文件还躺在硬盘上。这时候得继续查。

用系统工具卸载所有可见Java条目

Windows的“应用和功能”或“程序和功能”只管它自

己装进去的条目,但同一台机器常混着多个JDK/JRE(比如Oracle JDK 8、Adoptium JDK 17、Zulu JRE 11),它们会以不同名字出现:

  • Java SE Development Kit 8Uxxx
  • Temurin JDK-17.0.x+xx
  • Java(TM) Platform SE binary(这是JRE)
  • JDK x.x.xOpenJDK Runtime Environment

设置 → 应用 → 应用和功能(Win10/11)或 控制面板 → 程序和功能(Win7/8)中,逐个点开“卸载”,**不要跳过任何一条带 Java、JDK、JRE、Runtime、Development 字样的记录**。哪怕看着像旧版、没用过,也卸——残留的注册表项和安装目录往往就藏在这些“幽灵条目”里。

手动清理环境变量与注册表残余

卸载程序不会动你的 JAVA_HOMEPath,更不会碰注册表。这正是重装后 java -version 还指向旧路径、或者新JDK死活不生效的根源。

操作前请备份注册表(文件 → 导出),然后按顺序处理:

  • 右键“此电脑” → “属性” → “高级系统设置” → “环境变量”,删掉 JAVA_HOME 变量,并从 Path 中彻底删除所有含 Javajdkjre 的路径(例如 C:\Program Files\Java\jdk-11.0.2\bin
  • Win + R 输入 regedit,定位并删除以下两项(若存在):
    HKEY_LOCAL_MACHINE\SOFTWARE\JavaSoft
    HKEY_CURRENT_USER\Software\JavaSoft
  • 别漏掉 HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\JavaSoft(64位系统下32位Java的注册表分支)

扫清磁盘上最后的Java文件痕迹

卸载程序通常只删主程序,但以下位置很可能还躺着旧Java的“尸体”:

  • C:\Program Files\Java\(包括 jdk*jre* 文件夹)
  • C:\Program Files (x86)\Java\(32位Java常用位置)
  • C:\ProgramData\Oracle\Java\(自动更新器、配置缓存所在)
  • %USERPROFILE%\AppData\LocalLow\Sun\Java\%USERPROFILE%\AppData\Roaming\Sun\Java\(用户级配置、部署缓存)

把这些路径全打开,**只要文件夹名含 jdk、jre、java、sun、oracle 且明显是旧版本(如 1.6、1.7、8u202),直接删**。不确定?先重命名(如改成 jdk8_old_bak),验证新JDK能跑再删。

重装前务必重启一次——很多Java进程(如IDE后台、Maven守护进程)会锁住注册表或文件,不重启,清理可能不彻底。