Windows 11安装JDK 20全攻略:从环境变量配置到多版本管理
1. 项目概述为什么在Windows 11上安装JDK 20值得你关注如果你是一名Java开发者或者正准备踏入这个领域那么“安装JDK”几乎是你开启一切工作的第一步。听起来很简单对吧但就是这个看似简单的步骤我见过太多新手甚至是有几年经验的同行踩坑。尤其是在Windows 11这个相对较新的系统上从选择哪个版本的JDK到环境变量的配置再到与IDE的联动每一步都可能藏着让你调试半天的问题。今天我就以JDK 20在Windows 11上的安装为例把整个过程掰开揉碎了讲清楚不仅告诉你“怎么做”更重点解释“为什么这么做”以及那些官方文档里不会写的“坑”在哪里。JDK即Java Development Kit是Java开发的核心工具包。选择JDK 20一方面它是当时的一个功能更新版本包含了一些新的语言特性和性能改进另一方面通过这个相对较新的版本我们可以更清晰地看到从官网下载到系统配置的完整流程这个流程对于其他版本比如热词里很多人关心的JDK 17、JDK 1.8也是基本通用的。Windows 11作为主流操作系统其用户界面和系统设置与Windows 10有细微差别这些差别恰恰是导致安装后“环境变量不生效”、“命令行找不到java命令”等问题的常见原因。因此掌握在Win11上干净利落地部署JDK是一项非常实用的基础技能。2. 核心思路与准备工作避开第一个大坑——版本与来源选择在动手下载任何安装包之前理清思路至关重要。这一步选错了后面可能事倍功半。2.1 理解JDK发行版不止Oracle一家很多人的第一反应是去Oracle官网。这没错但你需要知道自从JDK的授权模式发生变化后社区涌现出了多个优秀的开源发行版。对于大多数开发和学习场景我强烈建议你使用OpenJDK的社区发行版例如Adoptium Temurin原AdoptOpenJDK或Amazon Corretto。它们完全免费提供长期支持LTS版本并且与Oracle JDK在功能上高度兼容。为什么推荐社区版纯粹为了避免潜在的许可合规问题。Oracle的Oracle JDK对于商业用途有明确的许可条款。而Adoptium或Corretto等采用更宽松的许可证让你可以更安心地用于开发和部署。关于“镜像”和“镜像网站”由于网络原因从国外主站下载可能速度较慢。这时我们可以利用国内镜像站。例如清华大学开源软件镜像站、华为云镜像站都提供了OpenJDK的镜像。在热词中搜索“jdk镜像网站”、“jdk国内镜像仓库”的需求非常普遍这恰恰说明了掌握镜像下载是一个高频痛点。2.2 版本选择LTS还是最新特性版JDK 20是一个“非LTS”短期支持版本。与之相对的是热词中频繁出现的JDK 17、JDK 11、JDK 8这些都是LTS版本。对于生产环境稳定性压倒一切应选择LTS版本。对于个人学习或想体验最新语言特性如JDK 20中的记录模式、虚拟线程等预览功能可以选择当前的最新版本。我们的选择本文以JDK 20为例进行安装其流程与安装JDK 17完全一致。如果你需要安装JDK 17只需在下载时选择对应的版本号即可。“jdk降级到17”的思考这个热词反映了实际开发中版本切换的常见需求。一个项目可能要求特定的JDK版本。因此学会如何在同一台机器上管理多个JDK版本而不是简单覆盖安装是一项高级但必备的技能我们会在后面详细讨论。2.3 系统确认与权限准备在Windows 11上操作请确保你拥有管理员权限。因为安装软件和修改系统环境变量通常需要管理员身份。右键点击安装程序时可以选择“以管理员身份运行”。在修改系统环境变量时如果遇到“拒绝访问”的提示也需要确保你的用户账户有足够权限。3. 详细实操步骤从下载到验证的完整通关指南接下来我们进入实战环节。我会以从Adoptium官网下载JDK 20的Windows MSI安装包为例因为MSI安装包能自动处理一些基础配置对新手更友好。3.1 第一步获取正确的JDK安装包打开浏览器访问 Adoptium 的发布页面。你可以通过搜索引擎找到它。选择版本在页面上找到版本选择下拉框选择“20”。在架构选择上绝大多数现代电脑都是x64如果你的系统是ARM架构如某些Surface设备则需选择aarch64。包类型选择JDK。选择安装包格式对于Windows优先选择.msi格式。相比于.zip压缩包MSI安装包的优势在于它能将JDK安装到系统标准目录如C:\Program Files\Eclipse Adoptium\并且可以自动在系统PATH中添加一个指向其bin目录的条目省去一部分手动配置环境变量的工作。点击下载。如果下载速度慢可以复制下载链接然后看是否有国内镜像站提供了相同版本的文件将链接中的域名替换为镜像站地址即可。注意如果你选择从Oracle官网下载流程类似但务必在下载前仔细阅读并理解其许可协议。对于.zip格式的包则完全是手动安装模式需要更多的配置步骤。3.2 第二步运行安装程序并理解关键选项找到下载好的.msi文件右键点击选择“以管理员身份运行”。欢迎界面直接点击“Next”。许可协议勾选接受条款点击“Next”。安装路径选择关键步骤安装程序会默认提供一个路径例如C:\Program Files\Eclipse Adoptium\jdk-20.0.x.x-hotspot。我强烈建议你记住或直接使用这个默认路径。为什么使用默认路径是一种良好的习惯可以避免因路径中包含空格或中文字符而引发的潜在问题虽然现代软件对此处理得越来越好但某些老旧工具仍可能出错。同时统一的路径也便于你日后管理和查找。如果你有特殊需求比如想安装到D盘请确保新路径简单明了例如D:\Java\jdk-20。安装选项通常会有“设置JAVA_HOME变量”和“将Java添加到PATH”的选项。请务必确保这两个选项都被勾选上。这正是MSI安装包方便的地方它帮你完成了最核心的环境变量配置工作。开始安装点击“Install”等待进度条完成。安装完成点击“Finish”退出向导。3.3 第三步验证安装与环境变量深度解析安装完成并不意味着万事大吉验证是关键。打开终端在Windows 11上我推荐使用Windows Terminal热词中也有提到。你可以在开始菜单中搜索“Terminal”或“Windows终端”打开它。它比传统的CMD或PowerShell体验更好并且支持多标签。验证Java命令在新的终端窗口中输入以下命令并回车java -version如果安装和PATH配置成功你会看到类似下面的输出其中包含了版本号“20.x.x”和供应商信息“Eclipse Adoptium”openjdk version 20.0.2 2023-07-18 OpenJDK Runtime Environment Temurin-20.0.29 (build 20.0.29) OpenJDK 64-Bit Server VM Temurin-20.0.29 (build 20.0.29, mixed mode, sharing)验证编译器同样地输入javac -version你应该看到javac 20.x.x的版本信息。如果上述命令提示“不是内部或外部命令也不是可运行的程序”这说明环境变量没有自动配置成功。这时就需要我们手动检查并配置。这也是整个安装过程中最容易出问题的地方。3.4 第四步手动配置环境变量备用方案与原理详解当自动配置失效时我们需要手动介入。理解环境变量的原理能帮你解决99%的相关问题。找到JDK安装目录进入你安装JDK的文件夹例如C:\Program Files\Eclipse Adoptium\jdk-20.0.2.9-hotspot。进入该文件夹你会看到bin,lib,jmods等子文件夹。设置 JAVA_HOME这是一个指向JDK根目录的系统变量。很多Java应用如Maven、Gradle、Tomcat、以及热词中提到的IDEA、Android SDK都依赖这个变量来定位Java。操作在Windows搜索框输入“环境变量”选择“编辑系统环境变量”。在弹出的“系统属性”窗口中点击底部的“环境变量”按钮。在“系统变量”区域点击“新建”。变量名输入JAVA_HOME变量值输入你的JDK安装的完整路径例如C:\Program Files\Eclipse Adoptium\jdk-20.0.2.9-hotspot点击“确定”。编辑 Path 变量Path变量告诉系统当你在命令行输入一个命令如java时应该去哪些目录下寻找这个可执行文件。操作在“系统变量”区域找到名为Path的变量选中并点击“编辑”。在弹出的窗口中点击“新建”然后添加一条新路径%JAVA_HOME%\bin重要原理这里我们使用了%JAVA_HOME%这个动态引用。它的好处是如果你将来升级或更换了JDK只需要更新JAVA_HOME这一个变量的值Path就会自动指向新的bin目录无需再次修改Path。这是一种最佳实践。将所有窗口一路“确定”关闭。验证手动配置必须重新启动一个全新的终端窗口或者重启资源管理器。因为环境变量的更改只对新启动的进程生效。在新的终端中再次运行java -version和javac -version。此时应该能正确显示版本信息。4. 进阶管理与常见问题排查实录基础安装完成后我们来看看更实际的问题和进阶技巧。4.1 如何管理多个JDK版本这是热词“windows 10 如何安装两个版本的jdk”所关心的在Win11上同理。你完全可以在同一台机器上安装JDK 8, JDK 11, JDK 17, JDK 20等多个版本。安装将它们安装到不同的目录即可例如C:\Java\jdk1.8.0_381C:\Java\jdk-11.0.xxC:\Program Files\Eclipse Adoptium\jdk-17.0.x.x-hotspotD:\DevTools\jdk-20切换命令行不推荐频繁修改全局的JAVA_HOME和Path。更优雅的方式是使用命令行工具或在IDE中指定。你可以在终端中通过直接指定完整路径来运行特定版本的JavaC:\Java\jdk1.8.0_381\bin\java -version D:\DevTools\jdk-20\bin\javac MyClass.java切换IDE这是最常用的方式。以热词中提到的IntelliJ IDEA为例打开项目后进入File-Project Structure-Project。在Project SDK下拉框中点击“Add JDK”然后导航到你安装的其他JDK目录。添加后你就可以为不同的项目选择不同的JDK版本了。IDEA会为每个项目独立记录其使用的JDK互不干扰。4.2 高频问题排查清单根据我的经验下面这些问题及其解决方案覆盖了90%的安装失败场景问题现象可能原因排查与解决方案‘java’ 不是内部或外部命令1. Path环境变量未配置或配置错误。2. 配置后未重启终端。1. 检查Path中是否包含%JAVA_HOME%\bin或JDKbin目录的完整路径。2.关闭所有已打开的CMD/PowerShell/Terminal窗口重新打开一个再试。‘javac’ 不是内部或外部命令通常是因为安装了只有JRE运行时环境的包而不是完整的JDK开发工具包。确保你下载的是JDK而不是 JRE。重新从Adoptium等网站下载JDK安装包。版本号显示不对系统Path中存在多个Java路径且顺序有误。在Path环境变量中将%JAVA_HOME%\bin上移到最前面确保系统优先使用我们新配置的JDK。IDEA等IDE找不到JDK1. IDEA未正确配置Project SDK。2. 安装路径包含特殊字符或空格虽不常见。1. 在IDE中手动添加JDK路径如上文所述。2. 检查JDK安装路径尽量使用无空格和中文的简单路径。安装程序运行失败1. 系统缺少必要运行库。2. 权限不足。3. 与旧版本残留冲突。1. 确保以管理员身份运行安装程序。2. 尝试暂时关闭杀毒软件或防火墙。3. 使用系统自带的“应用和功能”卸载旧版本Java再重新安装。4.3 关于“环境变量”的终极理解很多新手对“环境变量”感到困惑。你可以把它想象成系统的“通讯录”。当你在终端输入java时系统会去翻阅Path这个“通讯录”按照上面记录的目录顺序一个一个去找名叫java.exe的程序找到第一个就执行。JAVA_HOME则是这个“通讯录”里的一条“快捷方式”条目它记录的是Java家的“门牌号”安装根目录而%JAVA_HOME%\bin就是基于这个门牌号找到的“可执行文件房间”。理解了这一点配置和排查就都有了方向。5. 与开发工具的联动配置安装好JDK只是开始让它为你所用才是目的。5.1 在IntelliJ IDEA中配置JDK这是热词“idea配置jdk”的核心。前面简单提过这里详细说下打开或创建一个项目。点击File-Project Structure(快捷键CtrlAltShiftS)。在Project设置页你会看到Project SDK。如果显示No SDK点击下拉框选择Add JDK。在弹出的文件选择器中直接导航到你JDK的安装根目录即JAVA_HOME指向的路径例如C:\Program Files\Eclipse Adoptium\jdk-20.0.2.9-hotspot选中后点击确定。IDEA会自动识别并加载该JDK。你可以在Platform Settings-SDKs下看到所有已添加的JDK并进行管理。5.2 其他工具配置提示Maven/Gradle这些构建工具本身运行需要JDK。它们通常会自动使用系统环境变量JAVA_HOME指定的JDK。你也可以在它们的配置文件如mvnw脚本或gradle.properties中指定特定的JDK路径。EclipseEclipse自带编译器ECJ但它仍然需要一个JDK来运行Eclipse本身和启动JVM。在Eclipse的Window-Preferences-Java-Installed JREs中添加你的JDK路径。命令行编译与运行验证环境配置成功后你就可以在任意目录打开终端使用javac HelloWorld.java编译再用java HelloWorld来运行你的第一个Java程序了。这是检验安装是否成功的终极测试。整个过程从选择版本开始到最终在IDE中跑通代码每一步都有其意义和可能遇到的“坑”。尤其是在Windows 11上利用好Windows Terminal这样的现代终端工具以及理解环境变量这个核心概念能让你在Java开发环境的搭建和维护上更加得心应手。记住安装JDK不是目的建立一个稳定、可控、可维护的开发环境才是。当你下次再遇到需要“降级到JDK 17”或者为不同项目切换JDK时希望这篇文章能帮你从容应对。

相关新闻

大模型API成本控制实战:多模型集成与本地部署方案

大模型API成本控制实战:多模型集成与本地部署方案

最近在技术社区里,关于大模型API成本的话题热度不减。特别是当像DeepSeek这样的明星模型宣布价格调整时,无论是个人开发者、初创公司还是技术团队,都会重新审视自己的AI应用成本结构和替代方案。本文将从开发者的视角出发,系统性地…

2026/10/27 21:50:09 阅读更多 →
华为外包测试岗位体验:技术成长困境与职业发展思考

华为外包测试岗位体验:技术成长困境与职业发展思考

1. 从满怀期待到转身离开:我的华为外包初体验 去年年底,我接到了一个来自某知名外包公司的电话,对方告知有一个华为某产品线的测试岗位机会,问我是否感兴趣。坦白说,当时的心情是复杂的。一方面,“华为”这…

2026/10/28 6:55:21 阅读更多 →
ReMMD:基于智能体架构的多模态虚假信息检测系统设计与实现

ReMMD:基于智能体架构的多模态虚假信息检测系统设计与实现

1. 项目概述:当AI遇上“看图说话”的谎言 在信息爆炸的时代,我们每天都被海量的图文信息包围。一条耸人听闻的新闻,配上几张极具冲击力的图片,往往能在几分钟内引爆社交网络。但你是否想过,那张“证明”某地发生灾难的…

2026/10/25 21:41:20 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/28 23:48:14 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/28 7:28:00 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/28 9:02:11 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/28 22:10:30 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/28 9:00:54 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/28 7:29:02 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/28 16:58:40 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/28 9:01:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/28 19:25:09 阅读更多 →