新闻中心

JDK 和 JRE 区别是什么?新手最容易搞混

2025-12-14
浏览次数:
返回列表
JDK是供程序员开发的工具包,含j*ac等编译工具;JRE是供用户运行程序的环境,仅含JVM和类库;装JDK即自带JRE,但仅装JRE无法编译代码。

jdk 和 jre 区别是什么?新手最容易搞混

JDK 和 JRE 的核心区别就一句话:JDK 是给程序员用的开发包,JRE 是给普通用户用的运行包。新手常以为“装了就能跑 J*a”,结果配环境时卡在 j*ac 找不到,或者运行程序时报 “No JVM”,其实都是没分清这两个东西该装谁、装在哪。

用途完全不同:一个写代码,一个只运行

• JDK(J*a Development Kit)是“工具箱”——带编译器(j*ac)、调试器(jdb)、文档生成器(j*adoc)等,专门用来把 .j*a 文件编译成 .class 字节码
• JRE(J*a Runtime Environment)是“播放器”——只含 JVM 虚拟机和基础类库(比如 rt.jar),负责加载并执行已编译好的 .class 或 .jar 文件,不带任何开发功能。
• 简单记:你要写 J*a 程序,必须装 JDK;你只是双击运行别人做好的软件(比如 Minecraft 启动器、某些老版ERP客户端),装 JRE 就够了。

包含关系很清晰:JDK 里自带 JRE

• 安装 JDK 后,你在它的安装目录下一定能找到一个 jre 文件夹(例如 C:\Program Files\J*a\jdk-21\jre),这就是它内置的运行环境。
• 也就是说,装了 JDK 就自动有了 JRE,不需要额外再装;但只装 JRE,就永远没法编译源码。
• 常见误区:有人看到系统里有两个 JRE(一个在 JDK 内部,一个独立安装在 Program Files\J*a\jre1.8.0_391),以为冲突了——其实不冲突,JDK 默认优先用自己的那个。

命令行表现最直观:有 j*ac 才算装对了 JDK

打开终端,输入:
j*a -version → 显示版本,说明 JRE(或 JDK 的运行部分)正常
j*ac -version → 能显示版本,才证明 JDK 完整安装成功
• 如果提示 'j*ac' 不是内部或外部命令,大概率是你只装了 JRE,或者 JDK 的 bin 目录没加进系统 PATH。
• 注意:j*a 命令在 JDK 和 JRE 里都有,但 j*ac 只存在于 JDK 中 —— 这是最直接的区分方式。

实际场景中怎么选

• 学 J*a 编程、做课程实验、跑 Spring Boot 项目 → 必须装 JDK
• 公司发来一个 .jar 工具,让你点开就用 → 装 JRE 就行(不过现在多数人直接装 JDK,省事)
• 部署 Web 应用(如 Tomcat 运行 JSP)→ 表面上只运行,但 JSP 需实时编译成 Servlet,所以服务器上也得装 JDK,不能只靠 JRE
• 某些嵌入式设备或精简系统(如旧版 Linux 终端机)→ 可能只预装 JRE,避免占用空间

基本上就这些。不复杂,但容易忽略——关键就是盯住“你要干啥”:写代码?选 JDK;纯运行?JRE 够用。装完敲两行命令一试,立刻见分晓。

Glarity Glarity

Glarity是一款免费开源的AI浏览器扩展,提供YouTube视频总结、网页摘要、写作工具等功能,支持免费的镜像翻译,电子邮件写作辅助,AI问答等功能。

Glarity 131 查看详情 Glarity

以上就是JDK 和 JRE 区别是什么?新手最容易搞混的详细内容,更多请关注其它相关文章!


# 等功能  # 深圳抖音关键词排名技术  # 石家庄优质网站建设  # 学院路seo  # 旅游强化市场营销推广  # 垂直类招聘网站如何推广  # 阿里国际站seo培训  # 湖北网站推广流程图表  # 大庆网站建设技术外包  # 个人租房网站建设  # 网站推广应坚持的原则  # 自己的  # 如何处理  # 合集  # linux  # 自带  # 如何在  # 命令行  # 最容易  # 装了  # 运行环境  # 区别  # tomcat  # 工具  # 虚拟机  # 字节  # js  # java 


相关栏目: 【 科技资讯46185 】 【 网络学院92790


相关推荐: Go语言中Map值调用指针接收器方法的限制与应对  Pandas DataFrame 多条件优先级排序与排名  SteamMachine定价或为699美元 大家想入手吗?  AO3网页版最新入口合集 Archive of Our Own在线访问指南  漫蛙网页登录入口 漫蛙漫画官方授权网址  Windows7怎么硬盘安装 Windows7提取ISO镜像到非系统盘并运行setup.exe实现硬盘直装【教程】  天猫2025双十一0点秒杀攻略 天猫爆款抢购时间  网站内容防复制粘贴的实现策略与局限性  qq音乐在线播放入口_qq音乐电脑版登录链接  QQ邮箱官网登录入口 QQ邮箱网页版邮箱快速登录  Bilibili动漫最新防封地址发布-Bilibili动漫2025年最稳正版入口推荐  必由学官网快捷入口 必由学网页版在线学习平台  优化Django表单:提交验证失败后保留用户输入  Tabulator表格日期时间排序问题及自定义解决方案  斑马英语APP如何开启夜间护眼阅读_斑马英语APP夜间模式与低蓝光设置教程  单射、满射与双射的关系 一文理清所有逻辑  必由学官方平台入口 必由学在线课堂登录地址  如何修改开机登录密码_Windows账户安全设置超详细教程【必学】  Go与Ruby之间实现AES加密互通:CFB模式下的密钥长度匹配策略  sublime如何处理大型CSV文件的列对齐_sublime高级表格编辑插件指南  J*aScript中赋值与自增运算符的复杂交互与执行机制  yandex入口引擎手机版 yandex安卓版下载入口  抖音极速版最新版本 抖音极速版官方下载地址  一加Ace 6T支持全新明眸护眼:通过了最严苛的护眼小金标认证  深入理解字体排版:Adobe光学字偶距与CSS字偶距的差异与实现  如何优雅地扩展SprykerGlue后端API授权逻辑,使用spryker/glue-backend-api-application-authorization-connector-extension  c++中的std::launder有什么实际用途_c++对象生命周期与指针优化  解决Flask中Quill编辑器内容提交失败及TypeError的指南  构建轻量级网站内部消息系统:Formspree 集成指南  铁路12306改签能改到更早的车次吗_铁路12306改签提前车次规则  处理Kafka消费者会话超时:深入理解消息处理语义与幂等性  精准捕获:如何在页面中监听除特定元素外的所有点击事件  HTML元素状态管理:根据DIV内容动态启用/禁用按钮  基于动态规划的房屋花卉种植最小成本算法详解  qq浏览器如何查看和导出已保存的密码 qq浏览器密码管理器数据备份教程  MongoDB Aggregation:在嵌套对象数组中精确匹配ObjectId  React Hooks最佳实践:动态组件状态管理的组件化方案  网易大神账号申诉需要多久_网易大神账号申诉流程说明  一加Ace 6T实拍样张首次公布!李杰:主摄实力完全看齐4K档性能旗舰  CSS实现侧边栏导航项全宽圆角悬停背景效果  飞书妙记怎样用语音转文字速记_飞书妙记用语音转文字速记【速记方法】  如何设置Windows Defender的定时扫描_计划任务实现自动杀毒【安全】  知音漫客官网漫画下载_知音漫客网页版阅读记录  sublime怎么格式化代码_sublime代码美化与一键排版插件配置  在J*a中如何捕获IndexOutOfBoundsException_索引越界异常防护方法说明  响应式CSS Grid布局:优化网格项在小屏幕下的堆叠与宽度适配  J*aScript中向JSON对象添加新属性的正确姿势  如何使用CaptainHook和Composer管理Git钩子_在提交前自动运行代码检查的Composer配置  composer 和 npm/yarn 在管理依赖方面有什么核心思想差异?  PHP高效扁平化嵌套数组:使用array_merge与数组解包操作符 

搜索