Java近期新闻综述,内容主要涉及OpenJDK、JEP426、JDK19、JakartaEE10更新、SpringFramework点版本、CVE-2022-22968、、和22.0.0.5-beta、、、、、、、和Devnexus2022大会。
OpenJDKJEP426(VectorAPI第四轮孵化)从JEPDraft8280173状态提升至候选状态。在Panama项目的支持下,该JEP包含了针对前三轮孵化的改进:JEP417(VectorAPI第三轮孵化,在JDK18中交付)、JEP414(VectorAPI第二轮孵化,在JDK17中交付)以及JEP338(VectorAPI第一轮孵化,在JDK16中作为孵化器模块交付)。JEP426提议增强VectorAPI,以便按照JEP424(外部函数内存API预览版)的定义,从MemorySegment加载或向MemorySegment存储向量。
JDK19JDK19早期访问构建的Build18在上周发布,它是Build17的升级,修复了各种问题。要了解更多细节信息,请查看发布说明。
对于JDK19,我们鼓励开发者通过JavaBug数据库报告缺陷。
JakartaEE10在通往JakartaEE10的道路上,Eclipse基金会JakartaEE开发大使IvarGrimstad在他的每周博客HashtagJakartaEE中宣布,在过去的一周里,另有四份规范的发布评审已经结束。这意味着PlatformProfile中定义的规范已经有大约一半做好了迎接JakartaEE10的准备:
的发布评审将于2022年4月19日完成。对于其余的规范,目前正在等待兼容性认证申请,并处于TCK测试的不同阶段,发布评审应该会在未来三周内完成,以确保JakartaEE10能够在2022年5月底前交付。
SpringFramework作为CVE-2022-22965(SpringFrameworkRCEviaDataBindingonJDK9+)的后续,VMware宣布了CVE-2022-22968(SpringFramework数据绑定规则漏洞),因为此前发现,WebDataBinder类的配置属性disallowedFields没有得到有效保护。计划于2022年4月21日发布的和2.5.13版本也将包含这一修复,但开发人员最好在其SpringBoot应用程序中手动升级SpringFramework依赖。
和5.2.21已经发布,前者带来了12项Bug修复和改进,后者带来了5项。这两个版本还解决了上文所述的CVE-2022-22968漏洞。
Quarkus发布,特性包括:将RESTEasyReactive作为默认REST层;将作为默认版本;新的QuarkusTransactionAPI;以及ElasticsearchDevServices(可以自动启动dev和test模式的Elasticsearch容器)。此外,由于存在二进制兼容性不可靠问题,AssertJ被从QuarkusBOM中删除。开发人员需要在他们的应用程序中明确指定。要了解关于这个版本的更多细节,请查阅更新日志。
InfoQ后续将带来更详细的报道。
OpenLibertyIBM已经基于Beta测试版推出了,特性包括:支持JDK18;支持URL编码字符串客户端证书;引入PaketoLibertyBuildpack;大量的Bug修复。
版也已发布,特性包括:支持;分布式安全缓存(这样多个Liberty服务器就可以通过JCache共享缓存)。
MicronautMicronaut基金会发布了,提供了Bug修复、文档改进,并升级到、、、和。要了解关于这个版本的更多细节,请查阅更新日志。
WildFly在发布三周后,红帽公司发布了,特性包括:支持LTS版本JDK8、JDK11和JDK17;能够用MicroProfileConfig指定一个配置源根目录;一个新的address_queue_scan属性,用于为标记为删除的队列配置有效删除频率;一个新的execution-records-limit属性,用于限制通过JDBC存储检索的记录数量;可以启用资源适配器验证日志目录配置。要了解关于该版本的更多信息,请查阅文档。
EclipseGlassFish在通往的道路上,Eclipse基金会发布了第四个里程碑版本,它提供了:和规范(通过了各自的TCK);更新其他JakartaEE10组件。被认为是一个测试版,可在JDK11至JDK18上编译和运行。要了解关于该版本的更多信息,请查阅发布说明。
Piranha发布。这个版本被称为2022年4月“放缓步伐”版,其中包括依赖项和插件更新。要了解关于这个版本的更多信息,请查阅文档和问题跟踪系统。
ApacheCamelQuarkus为了与Quarkus保持一致,Apache发布了,包含和。新功能包括:改进对Windows的支持;新的JVM扩展azure-servicebus和google-secret-manager;原生支持mybatis扩展;废弃spark、ahc和ahc-ws扩展;删除ipfs和weka扩展;一个基于、面向Azure扩展的AzureHTTP客户端。要了解关于这个版本的更多信息,可以查看已关闭问题列表。
JetBrainsJetBrains发布了,新特性包括:支持JDK18;新的依赖分析器,用于依赖管理和冲突解决;通知工具窗口提供了一种新的方式来接收和存储来自IDE的通知;经过更新的新建项目向导改进了新项目的启动;改进IDE与Kotlin的性能。要了解关于该版本的更多信息,可在查看发布说明。
经过一年的酝酿,JetBrains还发布了,其特性包括:支持;通过一个简化的扩展API提供了更简单的插件创建方式;支持Kotlin/Native,作为对现有GraalVM支持的补充;提供新的API,取消postT和getT方法,简化HTTP请求;内置支持重试。要了解关于这个版本的更多信息,请查看更新日志。
InfoQ后续将对JetBrains的这两款产品进行更详细的追踪报道。
Devnexus大会在2021年的虚拟大会之后,由亚特兰大Java用户组组织的Devnexus2022于上周在乔治亚州亚特兰大的乔治亚世界会议中心举行。会议包括研讨会、演讲和第三届年度JUG领导人峰会,有许多来自Java社区的知名人士发言。