当前位置: 首页 > news >正文

【2025年最新版】Java JDK安装、环境配置教程 (图文非常详细)

文章目录

  • 【2025年最新版】Java JDK安装、环境配置教程 (图文非常详细)
  • 1. JDK介绍
  • 2. 下载 JDK
  • 3. 安装 JDK
  • 4. 配置环境变量
  • 5. 验证安装
  • 6. 创建并测试简单的 Java 程序
    • 6.1 创建 Java 程序:
    • 6.2 编译和运行程序:
    • 6.3 在显示或更改文件的扩展名(文件后缀)

【2025年最新版】Java JDK安装、环境配置教程 (图文非常详细)

1. JDK介绍

JDK(Java Development Kit) 是 Java 程序开发的核心工具包,包含了开发 Java 应用程序所需的所有资源。它为开发者提供了编写、编译、调试和运行 Java 程序的工具和类库。

JDK 的主要组成部分

  1. JRE(Java Runtime Environment)

    • 是 Java 程序运行的环境,包含了 JVM 和运行 Java 程序所需的核心类库。
    • JDK 包含了 JRE,因此开发者在使用 JDK 时,实际上也已经拥有了 JRE。
  2. Java 编译器(javac)

    • 将 Java 源代码(.java 文件)编译成字节码(.class 文件),供 JVM 执行。
  3. Java 类库(API)

    • 提供了大量的预定义类和方法,供开发者在编写程序时使用。常见的类库有:
      • java.lang:包含基本的类,如 StringMathObject 等。
      • java.util:提供集合框架、日期和时间处理等功能。
      • java.io:处理输入输出(I/O)操作的类。
      • java.net:处理网络编程的类。
  4. 工具(如 javadoc、jdb、jar)

    • javadoc:用于从 Java 源代码中的注释生成 API 文档。
    • jdb:调试工具,帮助开发者排查程序中的问题。
    • jar:用于打包和压缩 Java 类文件及相关资源的工具。

2. 下载 JDK

  • 访问 Oracle 官网 ,选择Products下拉框点击Java;请添加图片描述请添加图片描述

  • 选择点击图中Download Java

    请添加图片描述

    • 选择适合 JDK 版本,本文选择JDK 23在Windows x64环境下安装 x64 Installer。

      选择建议:

      • 普通用户:选择 x64 Installer,简便、快速。
      • 开发者或需要灵活控制安装位置的用户:选择 x64 Compressed Archive,需要手动设置环境变量。
      • IT 管理员或批量部署:选择 x64 MSI Installer,适合批量安装和企业环境。

    在这里插入图片描述

  • 点击下载 .exe 安装文件
    请添加图片描述

  • 需要下载其他版本JDK的可以参考下面流程(比如JDK 17/JDK 11/JDK 8),不需要下载其他版本的跳过到 安装 JDK。

    • 点击Java archive
      请添加图片描述
    • 在右侧边框选择需要的版本点击进去
      请添加图片描述
    • 根据自己电脑的配置选择合适的版本下载请添加图片描述

3. 安装 JDK

  1. 运行安装程序

    • 双击下载的 .exe 安装文件,开始安装过程。
    • 在安装过程中,可以选择默认安装路径,也可以自定义安装路径。我这里改成了自己设置的路径(D:\JDK),记住这个路径,在后面配置环境变量的时候需要用到。
      请添加图片描述
      请添加图片描述
      请添加图片描述
      请添加图片描述
  2. 完成安装

    • 安装完成后,点击“关闭”关闭安装程序。
      在这里插入图片描述

4. 配置环境变量

配置 JAVA_HOME

  1. 打开系统属性
    • Win + I 快捷键将打开** “设置”** 窗口,选择 “系统信息”
      请添加图片描述
  • 在弹出的窗口中,点击 “高级系统设置”
    请添加图片描述
  1. 进入环境变量设置

    • 系统属性 窗口中,点击 “环境变量”
      请添加图片描述
  2. 添加 JAVA_HOME 变量

    • 系统变量 区域,点击 “新建” 按钮,添加以下内容:
      • 变量名JAVA_HOME
      • 变量值:填写你的 JDK 安装路径,例如 D:\JDK(请根据实际安装路径调整)。
    • 点击 “确定”
      请添加图片描述
      请添加图片描述

配置 PATH 变量

  1. 找到名为 “Path” 的变量,点击 “编辑”
    请添加图片描述

  2. 点击 “新建”,并添加以下路径:

    • %JAVA_HOME%\bin
  3. 确认保存后,点击 “确定”
    请添加图片描述

5. 验证安装

  1. 打开命令提示符

    • Win + R 打开运行对话框,输入 cmd 并按回车,打开 命令提示符
  2. 检查 JDK 版本
    在命令行中输入以下命令,确认安装成功:

    java -version
    

    如果安装成功,你将看到类似于以下输出:

    java version "23.0.x"
    Java(TM) SE Runtime Environment (build 23.0.x+xxx)
    Java HotSpot(TM) 64-Bit Server VM (build 23.0.x+xxx, mixed mode)
    

    请添加图片描述

  3. 检查编译器
    还可以检查 javac(Java 编译器)是否安装:

    javac -version
    

    如果一切顺利,命令会显示 JDK 编译器的版本信息。
    请添加图片描述

6. 创建并测试简单的 Java 程序

6.1 创建 Java 程序:

  • 打开文本编辑器,输入以下代码:
    public class HelloWorld {public static void main(String[] args) {System.out.println("Hello, World!");}
    }
    
  • 将文件保存为 HelloWorld.java。(这里需要打开文件扩展名,打开方法看 3. 在显示或更改文件的扩展名(文件后缀)

6.2 编译和运行程序:

  • 在命令行中,切换到保存 HelloWorld.java 文件的目录。
  • 输入以下命令来编译:
    javac HelloWorld.java
    
  • 然后,运行程序:
    java HelloWorld
    
  • 你应该会看到输出:
    Hello, World!
    

请添加图片描述

6.3 在显示或更改文件的扩展名(文件后缀)

显示文件扩展名

1.打开文件资源管理器

  • 按下 Win + E 打开文件资源管理器。

2.进入视图设置

  • 在文件资源管理器的窗口中,点击 “查看” 菜单。
  • 然后选择 “显示”,接着勾选 “文件扩展名”

或者,点击 “查看” -> “选项”,然后选择 “查看” 标签,取消选中 “隐藏已知文件类型的扩展名”

更改文件扩展名

  1. 右键点击文件,选择 “重命名”
  2. 修改文件名并添加新的扩展名(例如 .txt.jpg)。
  3. Enter 确认。

注意:更改文件扩展名时,确保新的扩展名适合文件类型,否则文件可能无法正确打开。

相关文章:

【2025年最新版】Java JDK安装、环境配置教程 (图文非常详细)

文章目录 【2025年最新版】Java JDK安装、环境配置教程 (图文非常详细)1. JDK介绍2. 下载 JDK3. 安装 JDK4. 配置环境变量5. 验证安装6. 创建并测试简单的 Java 程序6.1 创建 Java 程序:6.2 编译和运行程序:6.3 在显示或更改文件的…...

Shell特殊状态变量以及常用内置变量总结

目录 1. 特殊的状态变量 1.1 $?(上一个命令的退出状态) 1.2 $$(当前进程的 PID) 1.3 $!(后台进程的 PID) 1.4 $_(上一条命令的最后一个参数) 2.常用shell内置变量 2.1 echo&…...

【4Day创客实践入门教程】Day4 迈向高手之路——进一步学习!

Day4 迈向高手之路——进一步学习! 目录 Day4 迈向高手之路——进一步学习!更多的开发板外壳制作 Day0 创想启程——课程与项目预览Day1 工具箱构建——开发环境的构建Day2 探秘微控制器——单片机与MicroPython初步Day3 实战演练——桌面迷你番茄钟Day4…...

EtherCAT-快速搭建

EtherCAT-快速搭建 快速简介 快速简介 EtherCAT现场总线协议是由德国倍福公司在2003年提出的,该通讯协议拓扑结构十分灵活,数据传输速度快,同步特性好,可以形成各种网络拓扑结构。倍福公司推出了自己的ASIC专用芯片有ET1100和ET1…...

【设计测试用例自动化测试性能测试 实战篇】

🌈个人主页:努力学编程’ ⛅个人推荐: c语言从初阶到进阶 JavaEE详解 数据结构 ⚡学好数据结构,刷题刻不容缓:点击一起刷题 🌙心灵鸡汤:总有人要赢,为什么不能是我呢 设计测试用例…...

DBeaver连接MySQL提示Access denied for user ‘‘@‘ip‘ (using password: YES)的解决方法

在使用DBeaver连接MySQL数据库时,如果遇到“Access denied for user ip (using password: YES)”的错误提示,说明用户认证失败。此问题通常与数据库用户权限、配置错误或网络设置有关。本文将详细介绍解决此问题的步骤。 一、检查用户名和密码 首先&am…...

【MySQL — 数据库增删改查操作】深入解析MySQL的 Update 和 Delete 操作

1. 测试数据 mysql> select* from exam1; ----------------------------------------- | id | name | Chinese | Math | English | ----------------------------------------- | 1 | 唐三藏 | 67.0 | 98.0 | 56.0 | | 2 | 孙悟空 | 87.0 | 78.…...

04树 + 堆 + 优先队列 + 图(D1_树(D1_基本介绍))

目录 一、什么是树? 二、相关术语 根结点 边 叶子结点 兄弟结点 祖先结点 结点的大小 树的层 结点的深度 结点的高度 树的高度 斜树 一、什么是树? 树是一种类似于链表的数据结构,不过链表的结点是以线性方式简单地指向其后继结…...

【Proteus仿真】【51单片机】多功能计算器系统设计

目录 一、主要功能 二、使用步骤 三、硬件资源 四、软件设计 五、实验现象 联系作者 一、主要功能 1、LCD1602液晶显示 2、矩阵按键​ 3、加减乘除,开方运算 4、带符号运算 5、最大 999*999 二、使用步骤 基于51单片机多功能计算器 包含:程序&…...

Solon Cloud Gateway 开发:Route 的配置与注册方式

路由的配置与注册有三种方式:手动配置;自动发现配置;代码注册。 1、手动配置方式 solon.cloud.gateway:routes: #!必选- id: demotarget: "http://localhost:8080" # 或 "lb://user-service"predicates: #?可选- &quo…...

jstat命令详解

jstat 用于监视虚拟机运行时状态信息的命令,它可以显示出虚拟机进程中的类装载、内存、垃圾收集、JIT 编译等运行数据。 命令的使用格式如下。 jstat [option] LVMID [interval] [count]各个参数详解: option:操作参数LVMID:本…...

[Collection与数据结构] B树与B+树

🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏: 🧊 Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 🍕 Collection与…...

Ubuntu 24.04 安装 NVIDIA Container Toolkit 全指南:让Docker拥抱GPU

Ubuntu 24.04 安装 NVIDIA Container Toolkit 全指南:让Docker拥抱GPU 前言一、环境准备1.1 验证驱动状态 二、安装NVIDIA Container Toolkit2.1 添加官方仓库2.2 执行安装 三、配置Docker运行时3.1 更新Docker配置 四、验证安装结果4.1 运行测试容器 五、实战应用 …...

17.Word:李楠-学术期刊❗【29】

目录 题目​ NO1.2.3.4.5 NO6.7.8 NO9.10.11 NO12.13.14.15 NO16 题目 NO1.2.3.4.5 另存为手动/F12Fn光标来到开头位置处→插入→封面→选择花丝→根据样例图片,对应位置填入对应文字 (手动调整即可)复制样式:开始→样式对话框→管理…...

图漾相机——C++语言属性设置

文章目录 前言1.SDK API功能介绍1.1 Device组件下的API测试1.1.1 相机工作模式设置(TY_TRIGGER_PARAM_EX)1.1.2 TY_INT_FRAME_PER_TRIGGER1.1.3 TY_INT_PACKET_DELAY1.1.4 TY_INT_PACKET_SIZE1.1.5 TY_BOOL_GVSP_RESEND1.1.6 TY_BOOL_TRIGGER_OUT_IO1.1.…...

【性能优化专题系列】利用CompletableFuture优化多接口调用场景下的性能

背景说明 在实际的软件开发中,我们经常会遇到需要批量调用接口的场景。例如,电商系统在生成商品详情页时,需要同时调用多个服务接口来获取商品的基本信息、库存信息、价格信息、用户评价等。 传统的依次调用方式存在性能问题 面对上述场景…...

docker安装emqx

emqx安装 拉取emqx镜像 docker pull emqx/emqx:v4.1.0 运行docker容器 docker run -tid --name emqx -p 1883:1883 -p 8083:8083 -p 8081:8081 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:v4.1.0 放行端口 1、如果要是自己的虚拟机,并且关闭了防火墙&a…...

DeepSeek超越ChatGPT的能力及部分核心原理

DeepSeek超越ChatGPT的能力及部分核心原理 目录 DeepSeek超越ChatGPT的能力及部分核心原理超越ChatGPT的能力核心原理超越ChatGPT的能力 推理计算能力更强:在复杂的数学计算、法律文件审查等任务中,DeepSeek的推理能力可媲美甚至超越部分国际顶尖AI模型,包括ChatGPT。例如在…...

Leetcode 3434. Maximum Frequency After Subarray Operation

Leetcode 3434. Maximum Frequency After Subarray Operation 1. 解题思路2. 代码实现 题目链接:3434. Maximum Frequency After Subarray Operation 1. 解题思路 这一题的话我们只需要考察所有的数 i i i转换为 k k k时所能够形成的最大的值。 而对于这个问题&…...

《DeepSeek-R1 问世,智能搜索领域迎来新变革》

DeepSeek-R1是由DeepSeek公司开发的一款创新型人工智能模型,自2024年5月7日发布以来,迅速在AI领域引起广泛关注。该模型凭借其卓越的语言理解能力、高效的数据处理能力、自适应学习能力、高安全性与可靠性以及广泛的应用场景与拓展性,在众多人…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...

在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:

在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档&#xff0c…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?

在大数据处理领域&#xff0c;Hive 作为 Hadoop 生态中重要的数据仓库工具&#xff0c;其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式&#xff0c;很多开发者常常陷入选择困境。本文将从底…...

【VLNs篇】07:NavRL—在动态环境中学习安全飞行

项目内容论文标题NavRL: 在动态环境中学习安全飞行 (NavRL: Learning Safe Flight in Dynamic Environments)核心问题解决无人机在包含静态和动态障碍物的复杂环境中进行安全、高效自主导航的挑战&#xff0c;克服传统方法和现有强化学习方法的局限性。核心算法基于近端策略优化…...

push [特殊字符] present

push &#x1f19a; present 前言present和dismiss特点代码演示 push和pop特点代码演示 前言 在 iOS 开发中&#xff0c;push 和 present 是两种不同的视图控制器切换方式&#xff0c;它们有着显著的区别。 present和dismiss 特点 在当前控制器上方新建视图层级需要手动调用…...

C# 表达式和运算符(求值顺序)

求值顺序 表达式可以由许多嵌套的子表达式构成。子表达式的求值顺序可以使表达式的最终值发生 变化。 例如&#xff0c;已知表达式3*52&#xff0c;依照子表达式的求值顺序&#xff0c;有两种可能的结果&#xff0c;如图9-3所示。 如果乘法先执行&#xff0c;结果是17。如果5…...

HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散

前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说&#xff0c;在叠衣服的过程中&#xff0c;我会带着团队对比各种模型、方法、策略&#xff0c;毕竟针对各个场景始终寻找更优的解决方案&#xff0c;是我个人和我司「七月在线」的职责之一 且个人认为&#xff0c…...

何谓AI编程【02】AI编程官网以优雅草星云智控为例建设实践-完善顶部-建立各项子页-调整排版-优雅草卓伊凡

何谓AI编程【02】AI编程官网以优雅草星云智控为例建设实践-完善顶部-建立各项子页-调整排版-优雅草卓伊凡 背景 我们以建设星云智控官网来做AI编程实践&#xff0c;很多人以为AI已经强大到不需要程序员了&#xff0c;其实不是&#xff0c;AI更加需要程序员&#xff0c;普通人…...

写一个shell脚本,把局域网内,把能ping通的IP和不能ping通的IP分类,并保存到两个文本文件里

写一个shell脚本&#xff0c;把局域网内&#xff0c;把能ping通的IP和不能ping通的IP分类&#xff0c;并保存到两个文本文件里 脚本1 #!/bin/bash #定义变量 ip10.1.1 #循环去ping主机的IP for ((i1;i<10;i)) doping -c1 $ip.$i &>/dev/null[ $? -eq 0 ] &&am…...