各大JDK说明及官网下载地址

java虚拟机

先简单说下java虚拟机,虚拟机发展了很多代,目前最最常见的就是 HotSpot,一般情况下下载jdk时候没有特别说明的就是用的这个虚拟机。

HotSpot算是官方正统的虚拟机了,发展到现在融合了很多其他虚拟机的优点(BEA公司的JRockit被oracle收购并jdk8以后融合到了HotSpot)。

还有 IBM公司的J9。主打内存占用更小。

还有收费的Azul Platform Prime前身是Azul Zing。不过这个我看官网只支持linux。

其他更多的虚拟机介绍可以参考: https://blog.csdn.net/weixin_43888891/article/details/123969996

噢 对了 还有比较新的oracle的GraalVM。好像挺厉害的样子。有兴趣的可以自己搜一下了解了解。

各大JDK

javafx是java8之后独立出来的,一般的jdk都没有再集成。

下面说的都是最新的jdk21的说明。

没有32位:这个好像没那么容易解决。jdk17大部分有32位的。

没有javafx:可以自行添加依赖,只是用起来稍微有一点点麻烦。

没有jre:可以自己根据所需模块单独生成。模块不同生成的jre大小也不一样,其实推荐自行生成。

虚拟机:没有特别说明就是HotSpot

oracle jdk

个人在java8之后就没再下载过oracle的jdk了,现在好像又说是免费了?懒得了解了,反正不用了。

下载地址: https://www.oracle.com/java/technologies/downloads/

没有32位。没有javafx。没有jre。

oracle OpenJDK

oracle构建的openJDK,更新好像不是特别勤快。

下载地址: https://jdk.java.net/

没有32位。没有javafx。没有jre。

Eclipse Temurin(推荐)

原来叫AdoptOpenJDK,还支持openj9虚拟机下载。现在改了个名也分开了。

基于 OpenJDK 的开源 Java SE 产生的构建版本。

这个好像用的还挺多的。毕竟官方wiki指引的下载都是这个。

openJDK官方wiki:https://wiki.openjdk.org/display/JDKUpdates/JDK+21u

下载地址: https://adoptium.net/zh-CN/temurin/releases/

没有32位。没有javafx。有jre。

IBM Semeru(使用j9虚拟机)

原来是跟AdoptOpenJDK(现在叫Eclipse Temurin)在一起的,选择不同的虚拟机进行下载。现在独立出来了。

原下载地址: https://adoptopenjdk.net/releases.html 已经不更新了,最新就到JDK16。

使用j9虚拟机,该虚拟机特点就是内存占用小。说是吞吐量不如HotSpot。

HotSpot运行占用500M的,这个只占用300M。

下载地址: https://developer.ibm.com/languages/java/semeru-runtimes/downloads/

图就不贴了,更新太慢了。这21都出来几个月了,还没更新呢。(2024-06-17,现在更新挺勤快的。)

没有32位。没有javafx。有jre。更新慢。

Azul Zulu(含javafx)

他家的Azul Platform Prime前身是Azul Zing 挺出名的,

主要是这个回收器厉害: C4 无暂停垃圾回收器,适用于几乎任何大小的堆(1GB 到 8TB)。

不过我看官方是收费的而且支持linux。有兴趣的可以去官网看看。

这里说的是他家免费的openJDK构建Azul Zulu。

下载地址: https://www.azul.com/downloads/?package=jdk#zulu

没有32位。有javafx。有jre。

Liberica JDK(含javafx,有32位)

他家是我看见的唯一提供jdk21 32位的。

下载地址: https://bell-sw.com/pages/downloads/

有32位。有javafx。有jre。

Full version :包含javafx。

Standard version:不包含javafx。

Lite version:看官方说明是没有功能缩减的只是进行了压缩改进的Standard version。这个版本那个包确实小。

总结

没有什么特殊需求:

用Eclipse Temurin。

有32位需求的:

目前JDK21 只有Liberica JDK。

想用直接集成了javafx的:

可以用Liberica JDK或者Azul Zulu。

服务器启动了贼多不经常用的程序但是又不能停,然后内存也有点紧张:

用IBM Semeru

Top