news 2026/4/15 17:10:01

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/3/27 18:02:16

YOLOv8-Scale-YOLOv8多尺度训练策略解析

YOLOv8-Scale:多尺度训练如何重塑目标检测的泛化能力 在工业质检线上,一台摄像头正高速扫描流过的电路板。有的缺陷藏在密密麻麻的焊点之间,仅占几个像素;而另一些大尺寸元件则横跨画面三分之一。如果模型只在固定分辨率下训练过&…

作者头像 李华
网站建设 2026/3/28 12:24:07

YOLO目标检测API支持结果水印嵌入,保护知识产权

YOLO目标检测API支持结果水印嵌入,保护知识产权 在AI视觉能力被广泛封装为服务的今天,一个看似不起眼却日益严峻的问题浮出水面:你如何证明这份由AI生成的检测报告,确实来自你的系统? 设想这样一个场景——某企业购买了…

作者头像 李华
网站建设 2026/3/31 15:39:45

Flink ML MinMaxScaler 把特征缩放到统一区间 [min, max]

1. MinMaxScaler 做什么? 对每个特征维度 (x) 做缩放: [x′x−xminxmax−xmin⋅(max−min)min][ x \frac{x - x_{min}}{x_{max} - x_{min}} \cdot (max - min) min ][x′xmax​−xmin​x−xmin​​⋅(max−min)min] 其中 (xmin,xmax)(x_{min}, x_{max}…

作者头像 李华
网站建设 2026/4/10 21:40:31

YOLO模型训练自动学习率查找:基于GPU性能测试

YOLO模型训练自动学习率查找:基于GPU性能测试 在工业AI视觉系统的实际部署中,一个看似不起眼的参数——学习率,往往决定了整个项目能否按时上线。我们见过太多团队卡在“模型不收敛”或“训练太慢”的阶段,反复试错、调整超参数&a…

作者头像 李华