news 2026/9/2 21:58:15

Java JRE的没落

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Java JRE的没落

在Java 9版本之后,Oracle 改变了 Java 的发行方式,移除了JRE(Java Runtime Environment)的独立发布。因此,Java 9(以及之后的版本)也没有单独的 JRE 了。而OpenJDK一般

一、JDK和JRE对比

JDK(Java Development Kit)和JRE(Java Runtime Environment)都曾经是Java 相关的两种重要组件,它们有不同的用途和功能。

1、JDK(Java Development Kit)

JDK 是 Java 开发工具包,它是用于开发 Java 程序的完整工具集。它包含了编译器、调试工具、文档生成工具等,供开发者使用。

JDK 包含了 JRE,因此 JDK 具备运行 Java 程序的能力。

编译器(javac)用于将 Java 源代码(.java文件)编译成字节码(.class文件)。

调试器(jdb)用于调试 Java 程序。

其他开发工具:包括 Javadoc(生成 API 文档的工具)、JAR(Java Archive,用于打包类文件)等。

JDK 是为开发人员准备的,开发人员需要它来编写、调试和编译 Java 应用程序。

2、JRE(Java Runtime Environment)

JRE 是 Java 运行时环境,它是一个提供 Java 程序运行所需的环境。JRE 主要用于运行 Java 应用程序。它包括JVM和类库。

JVM:是执行 Java 程序的核心部分,它负责加载字节码并执行代码。

类库:JRE 包含了 Java 标准库(如 java.util、java.io 等),这些库是 Java 程序运行时所需要的类和包。

JRE 是为普通用户提供的,普通用户只需要它来运行 Java 应用程序,而不需要开发工具。

3、两者对比

4、什么时候使用 JDK,什么时候使用 JRE:

开发阶段:如果我们是 Java 开发人员,编写和编译 Java 程序,那么我们需要安装 JDK。

运行阶段:如果我们只是需要运行已经编译好的 Java 程序,而不进行开发,我们只需要安装 JRE。

二、为什么没有JRE

1、模块化系统(Project Jigsaw):

在 Java 9 引入了模块化系统(Project Jigsaw),这使得 JDK 的结构更加模块化。

Java 运行时环境的组成变得更加灵活,用户可以选择需要的模块,而不再需要安装完整的 JRE。

2、JDK 中包含了运行时环境:

在 Java 9 之后,JDK 包含了开发工具(如编译器、调试器)以及JVM 和所有 Java 类库,也就是说运行 Java 程序所需的运行时环境已经和开发工具捆绑在一起。

所以,Java 9 和之后的版本中,不再单独发布 JRE,用户和开发者都只需要安装 JDK,JDK 中包含了 JVM 和所有必需的类库,满足开发和运行 Java 程序的需求。

3、对用户的影响

如果我们只需要运行 Java 程序,以前我们可能只需要 JRE,但现在我们只需要安装 JDK,因为 JDK 自带了运行时环境(JVM 和类库)。

4、应对办法

但是许多第三方应用需要配置jre路径,我们可以手工生成jre,例如:

cd D:\Program Files\Java\jdk11.0.9
bin\jlink.exe --module-path jmods --add-modules java.desktop --output jre
一键获取完整项目代码
bash
三、最后总结

现在,在 Java 9 和之后的版本中,不再单独发布 JRE,用户和开发者都只需要安装 JDK,JDK 中包含了 JVM 和所有必需的类库,满足开发和运行 Java 程序的需求。

这个讨厌的页面我们不需要了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 21:26:31

YOLO目标检测在智能家居中的应用:手势识别控制

YOLO目标检测在智能家居中的应用:手势识别控制技术背景与行业演进 在智能家庭设备日益普及的今天,用户对交互方式的要求早已超越“能用”,转向“好用”和“无感”。传统遥控器、手机App或语音助手虽然解决了部分操作问题,但在特定…

作者头像 李华
网站建设 2026/8/29 22:03:07

Files文件管理器性能调优实战:从瓶颈定位到极致优化

Files文件管理器性能调优实战:从瓶颈定位到极致优化 【免费下载链接】Files Building the best file manager for Windows 项目地址: https://gitcode.com/gh_mirrors/fi/Files 作为一名系统工程师,我经常面临老旧设备上Files文件管理器性能不佳的…

作者头像 李华
网站建设 2026/8/29 22:32:51

YOLOv10模型支持Tensor Cores,充分利用Ampere架构GPU

YOLOv10 模型如何借力 Tensor Cores 释放 Ampere 架构 GPU 的极致性能 在现代工业视觉系统中,一个看似简单的问题却长期困扰着工程师:如何在保证高精度的同时,实现每秒数百帧的稳定目标检测?尤其是在半导体质检、物流分拣或自动驾…

作者头像 李华
网站建设 2026/8/29 22:30:39

互联网大厂Java小白面试实录:从Spring Boot到Kubernetes的技术场景深度解析

文章简述 在这篇文章中,我们将通过一个模拟的互联网大厂面试场景,带领大家深入了解Java小白在面试中可能遇到的技术问题。面试涵盖了核心语言、微服务架构、安全框架以及云原生等多个技术栈,并通过具体的业务场景帮助求职者更好地把握技术难点…

作者头像 李华
网站建设 2026/8/29 19:15:02

YOLO目标检测在渔业养殖中的应用:鱼群数量统计

YOLO目标检测在渔业养殖中的应用:鱼群数量统计 在高密度水产养殖场里,清晨的监控画面中一片模糊晃动——成千上万条草鱼穿梭于水体之中,水面反光、鱼影重叠、光线随天气波动。传统靠人工抽样点数的方式早已无法满足现代化管理的需求。如何在不…

作者头像 李华