Windows 11 安装 jdk 8
Windows 11 安装 jdk 8
文章目录
- Windows 11 安装 jdk 8
- 1. 下载
- 2. 安装
- 3. 配置环境变量
- 3.1. 配置 `JAVA_HOME` 和 `Path`
- 3.2. 关于 `CLASSPATH`
- 4. 验证
- 4.1. 基础环境验证
- 4.2. 创建测试程序
1. 下载
下载页面:https://www.oracle.com/cn/java/technologies/downloads/
进入下载页面之后,往下拉,找到 Java 8
,点击;找到 Windows
点击;选择 x64 Compressed Archive(即 x64 结构 压缩包版本),点击 jdk-8u461-windows-x64.zip
连接下载。
点击链接后,弹窗询问阅读许可,勾选 “I reviewed and accept ……”,点击 “Download ……”。
注意: 自 Oracle JDK 8u191 之后,用于商业、生产或商业目的的 Oracle JDK 8 需要付费订阅(Oracle Java SE Subscription)。虽然个人学习/开发通常免费,但必须明确协议变更和潜在费用风险。
点击后,会跳转新页面,要求登录 Oracle 账号,登录之后,分别输入用户名和密码登录。
如果没有 Oracle 账户,点击登录窗下方的“创建账户”,创建一个,再登录。创建账户通常只需要几分钟。
登录成功后,页面通常会自动开始下载。
为什么选择
zip
压缩包,而不是exe
安装程序?
- 免安装 & 绿色化:解压即用,无注册表写入,卸载直接删除目录,无系统残留。
- 灵活安装位置:可解压到任意目录,支持便携设备(U盘/移动硬盘)。
- 多版本轻松共存:不同版本(JDK 8/11/17)或供应商(Oracle/OpenJDK)可并行安装,通过环境变量快速切换版本。
- 无需管理员权限:安装需要管理员权限,解压后即可运行。
- 高便携性:目录复制到其他机器,配置环境变量后立即生效。
2. 安装
由于我们下载的是 zip 压缩包,所以安装过程就是解压文件。
先规划安装目录:
- 选择盘: 考虑到 C 盘是系统盘,不建议在安装到 C 盘,选择 D 盘
- 设计目录:
- 考虑 D 盘可能不止用来安装软件,在 D 盘单独为软件创建一个目录
D:\soft
- 考虑将来可能安装其他软件,也可能同时安装 OracleJdk 和 OpenJDK,为 OracleJdk 创建一个目录
D:\soft\OracleJdk
- 考虑将来可能安装其他 jdk 版本,且 jdk8 下也有其他子版本,为 jdk8 创建一个目录:
D:\soft\OracleJdk\jdk8
- 考虑 D 盘可能不止用来安装软件,在 D 盘单独为软件创建一个目录
最终,规划好的安装目录是:D:\soft\OracleJdk\jdk8
,逐级创建这些目录。
右击下载好的文件,选择全部解压缩
,输入 D:\soft\OracleJdk\jdk8
作为目标路径并点击 提取
。
解压完成后,你将在 D:\soft\OracleJdk\jdk8
目录下看到一个名为 jdk1.8.0_XXX
的文件夹(XXX 是你的具体版本号)。这个 jdk1.8.0_XXX
文件夹的路径就是稍后需要设置的 JAVA_HOME
。
3. 配置环境变量
3.1. 配置 JAVA_HOME
和 Path
同时按 Win
+ R
键,弹窗中输入 SystemPropertiesAdvanced
,敲回车。
或者,你也可以通过 点击桌面下方开始按钮 -> 设置 -> 系统 -> 系统信息 -> 高级系统设置,最终与
SystemPropertiesAdvanced
效果一致。
点击弹窗中的环境变量
。
在系统变量
下点击新建
填写JAVA_HOME
变量:
- 变量名:
JAVA_HOME
- 变量值:
D:\soft\OracleJdk\jdk8\jdk1.8.0_461
注意:请将路径中的 461 替换为你实际下载的 JDK 8 小版本号
注:变量值就是解压安装后的路径,可从文件浏览器地址栏复制:
再次强调 JAVA_HOME 的路径必须指向包含 bin, lib, jre 等子目录的 jdk1.8.0_XXX 文件夹本身,而不是其父目录 jdk8。
在系统变量
下找到Path
变量,点击编辑
。
点击新建,输入%JAVA_HOME%\bin
,点击上移
,移动到列表顶部(确保优先使用),点击确定
。
依次点击环境变量
弹窗的确定
和系统属性
弹窗的确定
。
3.2. 关于 CLASSPATH
JDK 8 及以后版本通常不需要手动配置 CLASSPATH。
❓ 为什么现在不用配置 CLASSPATH
?
- JVM 默认行为已优化:
若未设置CLASSPATH
,JVM 自动使用.
(当前目录),足够运行简单程序。 - 构建工具全权管理:
Maven、Gradle、Ant 自动处理编译与运行时依赖,无需手动干预。 - IDE 自动处理:
IntelliJ、Eclipse 等通过项目配置管理类路径,无需环境变量。 - 命令行可用
-cp
临时指定:
需要依赖时,用java -cp "lib/*;." Main
更灵活、安全。
结论:全局
CLASSPATH
已过时,不配置才是现代标准做法。
❓ 原先是怎么配置的?(历史做法)
下面是 JDK 5~6 时代的常见配置,写入系统环境变量。
CLASSPATH = .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
❓ 原配置内容用途 & 为何现在不用
配置项 | 当时用途 | 为何现在不用 |
---|---|---|
. (当前目录) | 告诉 JVM 从当前路径加载类 | 在 JDK 8 中,javac 和 java 命令默认会查找当前目录下的 .class 文件,因此无需显式将 . 添加到 CLASSPATH |
tools.jar | 主要用于 JDK 的工具链运行,而非普通 Java 程序的运行或编译 | 在 JDK 8 中,tools.jar 通常由 JDK 的工具自动加载,无需手动配置 |
dt.jar | 用于特定的开发场景(例如,开发调试工具或 IDE 插件) | 普通 Java 开发中不会直接依赖 dt.jar,因此无需将其加入 CLASSPATH。 |
⚠️ 额外问题:全局
CLASSPATH
易导致类冲突、升级失败、跨项目污染。
✅ 总结:一句话说清
过去需手动配置
CLASSPATH
是因工具缺失,如今 JVM 默认加载 + 构建工具 +-cp
参数已完全替代,保持“不设全局”才是最佳实践。
📌 记住:
不配置 ≠ 不懂,而是 懂了才不配置。
4. 验证
4.1. 基础环境验证
右击桌面,点击在终端中打开
,逐条输入下面命令
# 验证 JAVA_HOME 设置
echo %JAVA_HOME%
# 应显示:D:\soft\OracleJdk\jdk8\jdk1.8.0_461(你的实际路径)# 验证 Java 运行时版本
java -version
# 应显示:
# java version "1.8.0_461"
# Java(TM) SE Runtime Environment (build 1.8.0_461-b11)
# Java HotSpot(TM) 64-Bit Server VM (build 25.461-b11, mixed mode)# 验证 Java 编译器版本
javac -version
# 应显示:javac 1.8.0_461# 检查 Path 是否包含 JDK
where java
# 应显示:D:\soft\OracleJdk\jdk8\jdk1.8.0_461\bin\java.exe
4.2. 创建测试程序
找个目录,新建文件 HelloJDK8.java
public class HelloJDK8 {public static void main(String[] args) {// JDK 8 特性:Lambda 表达式Runnable r = () -> System.out.println("JDK 8 特性:Lambda 表达式:验证成功");// JDK 8 特性:新的日期APIjava.time.LocalDate today = java.time.LocalDate.now();System.out.println("当前日期: " + today);System.out.println("JDK 8 特性:新的日期API:验证成功");r.run();// 验证默认方法(JDK8接口特性)Greeter greeter = new Greeter() {};greeter.defaultGreet();}
}// 带默认方法的接口(JDK8特性)
interface Greeter {default void defaultGreet() {System.out.println("JDK8接口特性:默认方法:验证成功");}
}
点击文件资源管理器的地址栏,切换英文输入法,输入cmd
,敲回车
逐条输入下面命令,编译和运行测试
# 编译程序
javac HelloJDK8.java# 运行程序
java HelloJDK8
预期成功输出
当前日期: 2025-07-27
JDK 8 特性:新的日期API:验证成功
JDK 8 特性:Lambda 表达式:验证成功
JDK8接口特性:默认方法:验证成功