JRE 和 JDK 的区别是什么?
关注者
342被浏览
683,448登录后你可以
不限量看优质回答私信答主深度交流精彩内容一键收藏
这个貌似简单的问题有了新答案!
答案有 3 层:
第 1 层:
JRE:Java Runtime Environment,运行环境
JDK:Java Development Kit,开发环境
应该用 JDK 编译项目,然后放到 JRE 服务器或 Docker 中运行,减小了部署体积:
JRE RPM 安装包比 JDK 小 50MB
JRE Linux Docker 比 JDK 小 100MB
第 2 层:
2018 年 Java 11 发布时,Oracle 宣布不再提供 JRE,开发者可使用 jlink 工具自己制作 JRE。
2021 年发布的 Java 17 也没有 JRE。
因为使用官方软件包最可靠,所以服务器/Docker 应使用官方 JDK,而不是自己做的 JRE。
所以此问题过时了。
第 3 层:
由于 Java 11 收费,OpenJDK 11 没有 LTS,大量开发者转向使用第三方 JDK,比如:Liberica、AdoptOpenJDK,它们提供了 JRE,比如:
Liberica JRE 17 体积 55MB,而 JDK 78MB。