最近在调研 JDK 17,并且试着将之前的一个小项目升 级了一下,在测试环境跑了一段时间。最终,决定了,新项目要采用 JDK 17 了。
JDK 1.8:“不是说好了,他发任他发,你用 Java 8 吗?”
不光是我呀,连 Spring Boot 都开始要拥护 JDK 17了,下面这一段是 Spring Boot 3.0 的更新日志。
最近在调研 JDK 17,并且试着将之前的一个小项目升 级了一下,在测试环境跑了一段时间。最终,决定了,新项目要采用 JDK 17 了。
JDK 1.8:“不是说好了,他发任他发,你用 Java 8 吗?”
不光是我呀,连 Spring Boot 都开始要拥护 JDK 17了,下面这一段是 Spring Boot 3.0 的更新日志。
今天说一说 GraalVM。
GraalVM 是 Oracle 大力发展和想要推广的新一代 JVM ,目前很多框架都已经渐渐支持 GraalVM 了,比如我们在用的 Spring 也已经推出了对 GraalVM 兼容的工具包了。
既然说的这么厉害,那么它到底是何方神圣呢。
我们都知道 Java 程序都是跑在 JVM 上的,一旦 JVM 有什么风吹草动,必然会影响服务的稳定性。幸运的话,服务会发生抖动,可能有部分请求出现延迟或异常。不幸的话,JVM 直接崩溃,导致服务完全中断。
这可不是什么好事,与 JVM 一起崩溃的,除了服务,还有我们的心态。
你每天写的 Java 代码都需要 JDK 的支持,都要跑在 JVM 上,难道你就不好奇 JDK 长什么样子吗。好奇,就来编译并实现一个自己的 JDK 吧。
本次编译环境 macOS 10.12,编译的是 JDK 11 版本。
之前发过这篇文章,但是文中的例子有点错误,都是用的字面量当参数,虽然结论是没有问题的,但是根据例子推导结论其实是有问题的,这里重新把有问题的例子和图都替换了,因为已发送的文章只能修改几个字,所以这里重新发一遍。以免误人子弟。