OpenJDK 21 升级指南

OpenJDK 21 升级指南

💡 原文中文,约18800字,阅读约需45分钟。
📝

内容提要

OpenJDK 21发布后,D瓜哥建议整体升级项目依赖,特别是Lombok和Netty。注意JDK 21移除了Java EE模块,需要引用相关Jar包。为解决编译和运行中的错误,需添加特定依赖和启动参数。使用Maven的profile机制可实现无痛升级,确保项目在不同JDK版本间平稳切换。

Q&A

升级到 OpenJDK 21 时需要注意哪些依赖的版本?

Lombok 需升级到 v1.18.30+,Netty 建议升级到 4.1.93.Final+,Bean Validation 升级到 jakarta.validation-api 3.0.2 及 hibernate-validator 7.0.5.Final。

如何解决编译时找不到 javax.annotation.Resource 的问题?

需要添加相关的 Jar 包依赖,如 jakarta.annotation-api 或 javax.annotation-api。

OpenJDK 21 移除了哪些模块?

OpenJDK 21 移除了 Java EE 模块,因此需要引用相关的 Jar 包。

如何使用 Maven 的 profile 机制实现无痛升级?

可以根据 JDK 版本自动激活不同的配置,确保项目在不同 JDK 版本间平稳切换。

在 JDK 21 中,如何处理 Java 模块化带来的访问错误?

可以使用 --add-opens 参数来解决访问错误,确保模块对外开放。

升级到 OpenJDK 21 后,如何检查项目中的潜在问题?

可以使用阿里巴巴开发的 Migration Toolkit for Java 来检查 JDK 升级中的问题。

🏷️

标签

➡️

继续阅读