jdk安装卡在“解压”阶段实为启动预检失败,主因是java.exe残留进程、%temp%空间不足或路径异常、杀毒软件拦截7z.dll、ntfs权限限制及windows installer服务未运行;应结束java相关进程、清理并确认%temp%空间、添加安全软件白名单、以管理员身份运行并确保msiserver服务启用。

JDK 安装卡在“解压”阶段,通常不是真正在解压文件,而是安装程序启动初期就受阻。问题多出在进程冲突、临时目录异常、安全软件拦截或权限限制上,而不是压缩包本身损坏。
检查并结束残留的 Java 进程
很多所谓“解压失败”,其实是安装程序尝试调用系统中已有的 java.exe 或 javaw.exe 做预检时被卡住——比如旧版本卡死、IDE 后台运行、Maven/Gradle 构建任务未退出等。
- 打开任务管理器(Ctrl+Shift+Esc),搜索 java.exe 和 javaw.exe,全部结束(包括“后台进程”标签页里的)
- 顺手检查 IntelliJ、Eclipse、VS Code 的 Java 扩展是否在跑调试或编译任务
- 重启电脑后立即安装,可避免多数隐性进程干扰
确认并清理 %TEMP% 目录空间与路径
Windows JDK 安装包(尤其是 .exe 自解压格式)默认把中间文件写入 %TEMP%,哪怕 C 盘剩 20GB,如果 %TEMP% 指向一个只剩几百 MB 的小分区(如 D:\temp),就会报 Failed to extract archive 或直接闪退。
Java开发手册规约集合,基于阿里巴巴Java开发手册(嵩山版)。 涵盖7大维度:编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、设计规约。 当用户需要:(1) 编写或审查Java代码 (2) 检查命名/代码规范 (3) 处理异常和日志 (4) 编写单元测试 (5) 安全编码 (6) 数据库设...
- 按 Win+R,输入 cmd 回车,在命令行执行:echo %TEMP% 查看当前路径
- 再执行:dir %TEMP% 看剩余空间和文件数量
- 手动删掉里面明显是临时解压留下的文件夹,例如:jdk-*-temp、install*.tmp
- 不想改系统变量?可临时指定:set TEMP=C:\temp && start jdk-24_windows-x64_bin.exe(提前建好 C:\temp 并确保有写权限)
绕过安全软件对 7z.dll 的拦截
Oracle/OpenJDK 的 Windows .exe 安装包本质是 7-Zip 自解压格式,运行时需加载内置的 7z.dll。部分国产安全软件(如某管家、某毒霸)会把它误判为“可疑打包行为”,静默阻止 DLL 加载,结果就是进度条卡在 5%~10%,日志里可能有 LoadLibrary failed for 7z.dll 提示。
- 临时关闭杀毒软件实时防护,或把安装包完整路径 + %TEMP% 目录加入白名单
- 换用官网提供的离线 ZIP 包(如 jdk-24_windows-x64_bin.zip),手动解压到目标目录,完全跳过自解压流程
- 别用第三方“高速下载器”或浏览器断点续传下载,它们容易破坏自解压头校验
排查 NTFS 权限与 Windows Installer 服务
较新 JDK(如 JDK 17+)安装时会尝试写入 %ProgramData%\Oracle\Java,而该目录默认只允许 Administrators 写入;同时,.exe 安装包底层依赖 Windows Installer 服务(msiserver),若它没运行,也会表现为“卡在解压前”。
- 打开 services.msc,确认 Windows Installer 服务状态为“正在运行”,启动类型设为“手动”或“自动”
- 若服务无法启动,可尝试管理员命令行执行:net stop msiserver && net start msiserver
- 以管理员身份运行安装程序,并确保 UAC 弹窗点“是”(不是回车默认)
- 安装路径避免含中文、空格或特殊符号,推荐使用类似 C:\jdk24\ 这样的简洁路径
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










