企业开发应默认选用jdk 17 lts——它是spring boot 3.x强制基线,支持至2029年,zgc、密封类、虚拟线程等特性已稳定运行多年;推荐eclipse temurin发行版,安装需手动指定无空格路径、分步配置java_home与path,并用where命令双重验证java和javac一致性。

企业开发中应默认选用 JDK 17(LTS),而非“可选”——它已是 Spring Boot 3.x 的强制基线,官方支持持续至 2029 年,ZGC、密封类、虚拟线程(预览)等关键特性已在主流生产环境稳定运行多年。
优先选 Eclipse Temurin(Adoptium)发行版
避开 Oracle JDK 商用版:自 2023 年起,Oracle 对 JDK 17+ 在商业场景中启用付费许可,未购授权存在法律与审计风险。Temurin 是 Eclipse 基金会主导的开源发行版,构建流程透明、测试严格,被 Spring、Gradle、Jenkins 等生态广泛集成,免费、合规、可靠。
- 访问官网:https://www.php.cn/link/e387385ebe0dbeefed3e8e9f3968aaba
- 选择 LTS 版本,如 jdk-17.0.11+9(Windows x64 MSI Installer)
- 下载后校验 SHA256 签名(页面右侧提供),确保安装包未被篡改
安装路径与方式必须规范
不能双击图形安装器一路下一步——这极易导致 PATH 写入错误、JAVA_HOME 缺失或路径含空格引发脚本失败。
- 以管理员身份运行 PowerShell,执行静默安装命令:
msiexec /i temurin-jdk-17.0.11+9.msi INSTALLDIR="D:\Java\jdk-17.0.11" ADDLOCAL=FeatureJavaHome,FeatureEnvironment /quiet - 安装路径必须满足:无中文、无空格、非系统盘默认目录(推荐 D:\Java\jdk-17.0.11)
- 禁用独立 JRE 安装:JDK 自带 JRE,额外安装会导致 PATH 污染和版本不一致
环境变量要分步、隔离、精简配置
JAVA_HOME 是锚点,Path 是它的引用;多版本共存时,残留路径会优先命中,造成编译器错用旧版。
- 新建系统变量:JAVA_HOME = D:\Java\jdk-17.0.11
- 编辑系统变量 Path,在顶部新增一行:%JAVA_HOME%\bin
- 彻底删除所有旧 JDK/JRE 相关条目,尤其 C:\Program Files\Java\jre* 和其他 JAVA_HOME 定义
- 设置 JAVA_TOOL_OPTIONS = -Dfile.encoding=UTF-8 -XX:+UseContainerSupport(解决中文乱码 + K8s 内存感知)
- 不要设置 CLASSPATH:现代构建工具(Maven/Gradle)和 IDE 自行管理类路径,手动设易引发冲突与安全告警
验证必须覆盖四个关键点
只跑 java -version 是假成功。javac 找不到、版本号不一致、路径指向 JRE,都是典型配置失败信号。
- 新开 cmd(避免缓存旧变量)
- 执行
where java→ 应返回 D:\Java\jdk-17.0.11\bin\java.exe - 执行
where javac→ 应返回 D:\Java\jdk-17.0.11\bin\javac.exe - 分别运行
java -version和javac -version→ 两处输出版本号必须完全一致(如 17.0.11+9)
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











