HarmonyOS开发者限时福利来啦!最高10w+现金激励等你拿~ 了解详情
写点什么

Java 近期新闻:Helidon 4.0、Eclipse Serializer 1.0 和 JDK 22 JEP

  • 2023-11-09
    北京
  • 本文字数:3803 字

    阅读完需:约 12 分钟

大小:1.94M时长:11:18
Java近期新闻:Helidon 4.0、Eclipse Serializer 1.0和JDK 22 JEP

OpenJDK


在经过评审之后,JEP 456(未命名变量与模式)从 Proposed to Target 进入到 Targeted(JDK 22)状态。这个 JEP 提议在经过前一轮预览之后确定这个特性:在 JDK 21 中发布的 JEP 443(未命名变量与模式(预览))。这个特性将“通过增加未命名模式未命名变量来增强语言,未命名模式可以匹配记录组件而无需声明组件的名称或类型,未命名变量是指被初始化但不被使用的变量。”这两者都以下划线字符表示,如r instanceof _(int x, int y)r instanceof _


JEP 460(Vector API (第七轮孵化))已经从 Candidate 进入到 Proposed to Target(JDK 22)状态。这个 JEP 属于Project Panama,在前六轮孵化的反馈基础上进行了增强:在 JDK 21 GA 版本中发布的 JEP 448(Vector API (第六轮孵化));在 JDK 20 中发布的 JEP 438(Vector API (第五轮孵化));在 JDK 19 中发布的 JEP 426(Vector API (第四轮孵化);在 JDK 18 中发布的 JEP 417(Vector API (第三轮孵化));在 JDK 17 中发布的 JEP 414(Vector API (第二轮孵化)和在 JDK 16 中作为孵化模块发布的 JEP 338(Vector API (孵化器))。自 JEP 448 以来最重要的变化包括对JVM编译器接口 (JVMCI)的增强和支持 Vector API 值。评审工作于 2023 年 11 月 3 日结束。


JEP 462(结构化并发 (第二轮预览)),已经从 JEP Draft 8317302 进入到 Candidate 状态。这个 JEP 没有发生变化,建议在 JDK 22 中继续预览 API,以便获得更多来自上一轮预览的反馈:在 JDK 21 中发布的 JEP 453(结构化并发 (预览))。这个特性通过引入结构化并发来简化并发编程,将在不同线程中运行的相关任务组视为单个工作单元,从而简化错误处理和取消操作,提高可靠性并增强可观察性。


JEP 461(Stream Gatherers (预览))已经从 JEP Draft 8317955 进入到 Candidate 状态。这个 JEP 提议让 Stream API 支持自定义中间操作。 “这将允许流式管道以现有内置中间操作不容易实现的方式来转换数据。”更多有关这个 JEP 的细节可以在 Oracle Java 平台组软件架构师Viktor Klang编写的原始设计文档中找到。


JDK 22


JDK 22Build 21已经可用,包含了来自 Build 20 的更新,包括对各种问题的修复。关于此版本的更多详细信息可以在版本说明中找到。


对于JDK 22,开发者可以通过Java Bug Database报告错误。


Jakarta Data


Jakarta Data 1.0.0 的第一个里程碑版本提供了以下内容:一个用于执行实体基本操作的新接口BasicRepository接口;CrudRepository接口添加新的方法insert()update(),用于扩展针对实体的基本操作能力,包括插入和更新操作;用于 CRUD 操作的新注解,InsertUpdateDeleteSave。关于该版本的更多详细信息可以在版本说明中找到。


GraalVM


Oracle Labs 发布 GraalVM for JDK 21 Community 21.0.1,包含了根据 Oracle关键补丁更新进行的修复,这些修复包括:一个新的CEntryPointErrors类,用于在无法确定堆栈边界时返回错误;在取消未使用的内存分配时发生进程崩溃;以及在 macOS 上使用ProcessBuilder类时偶发崩溃。关于该版本的更多详细信息可以在版本说明中找到。


Spring Framework


Spring Framework 6.1 的第二个发行候选版本带来了问题修复、文档改进、依赖项升级和新特性,如:支持在@SpringJUnitConfig@SpringJUnitWebConfig注解中配置ContextLoader,保持与@ContextConfiguration注解兼容;改进ControlFlowPointcut类的可扩展性,支持方法名称模式匹配;在TestContext接口中添加新注解DisabledInAotMode,用于跳过 AOT 处理。关于该版本的更多详细信息可以在版本说明中找到。


Spring Modulith 1.1.0 的第一个发行候选版本和服务版本 1.0.2 带来了问题修复、依赖项升级和改进,如:不再支持 Google Suppliers类的memoize()方法,而是支持 Spring SingletonSupplier类的of()方法;在参考文档中添加了一个任务说明。1.1.0-RC1 的新特性包括:在org.springframework.modulith.events包中新增@ApplicationModuleListener注解,对应的原始org.springframework.modulith包中的注解被标记为已弃用;重构@Modulith注解,用于定义遵循 Modulith 结构约定的 Spring Boot 应用程序。关于这些版本的更多详细信息可以在 1.1.0-RC1 的版本说明和 1.0.2 的版本说明中找到。


Spring Vault 3.1.0 的第一个发行候选版本带来了文档改进、依赖项升级和新特性,如:VaultTokenRequest类支持role_nameentity_alias参数;支持Transit Secrets Engine API类的prehashed属性;为VaultTransitOperations接口和VaultTransitTemplate类添加了rewrap()方法。关于该版本的更多详细信息可以在版本说明中找到。


Helidon


在 Helidon 4.0.0-ALPHA1 发布一年多时间之后,Oracle 发布了Helidon 4.0.0,带来了新的 Helidon Níma 服务器、对 MicroProfile 6.0 的支持,以及从异步 API 到阻塞 API 的转变。Helidon Níma 服务器是从头开始设计和构建的,充分利用了虚拟线程(这是 JDK 21 的特性之一)。关于该版本的更多详细信息可以在版本说明中找到,InfoQ 将会发布更详细的报道。


Helidon 的服务版本3.2.32.6.4都带来了显著的变化,如:HttpSignProvider类中定义的tarketKeys变量现在返回 Java 类ConcurrentHashMap的实例,而不是之前的HashMap类;max-payload-size属性现在被解析为Long类型,与 Helidon 4.0 保持一致,并移除了在值大于Integer.MAX_VALUE时抛出IllegalArgumentException;为NonTransactionalEntityManagerExtendedEntityManager类添加了无参数非私有构造函数。关于这些版本的更多详细信息可以在3.2.32.6.4的变更日志中找到。


Eclipse Serializer


Eclipse 基金会发布Eclipse Serializer 1.0,这是一个专为处理具有复杂对象结构和高度安全性的 Java 对象而设计的项目。该项目就是以前的 MicroStream Serializer,它让开发者能够序列化任意的 Java 对象,但与传统的 Java 序列化不同,无需实现Serializeable接口,也不需要使用特定的接口、超类或注解。


Quarkus


Red Hat 发布Quarkus 3.5.0,带来了问题修复、文档和性能改进,以及一些重要的变化,如:支持 JDK 21;改进了 OIDC 令牌传播过滤器,可以自定义交换状态并提供客户端名称;允许并行执行阻塞健康检查。关于该版本的更多详细信息可以在变更日志中找到。


BellSoft


BellSoft 发布了 JDK 11.0.10、17.0.9 和 21.0.1 的 Liberica Native Image Kit 版本22.3.423.0.223.1.1,作为上述关键补丁更新发布周期的一部分,解决了以下这些问题:CVE-2023-22025,允许未经身份验证的攻击者通过多种协议访问网络攻击 Oracle Java SE、Oracle GraalVM 企业版和 Oracle GraalVM for JDK,从而未经授权地更新、插入或删除可访问数据;CVE-2023-22067,允许未经身份验证的攻击者通过 CORBA 访问网络攻击 Oracle Java SE,从而未经授权地更新、插入或删除某些可访问的 Oracle Java SE 数据;CVE-2023-22081,允许未经身份验证的攻击者通过 HTTPS 访问网络攻击 Oracle Java SE 和 Oracle GraalVM for JDK,从而未经授权地导致 Oracle Java SE 和 Oracle GraalVM for JDK 部分拒绝服务。


Hibernate


Hibernate ORM 6.4.0 的第一个候选版本提供了以下功能:新的@SoftDelete注解,用于支持软删除,可以将值标记为已删除/未删除,而不是活动/非活动;实现了在 HQL 和 Criteria 查询中处理数组的其余功能;支持在 JDK Flight Recorder 中编写特定于 Hibernate 的事件。


Hibernate Search 7.0.0 的第一个候选版本包含了以下功能:问题修复;与 Hibernate ORM基于鉴别器的多租户、Elasticsearch 8.10 和 OpenSearch 2.10/2.11 的兼容性;依赖项升级到 Hibernate ORM 6.3.1.Final 和 Apache Lucene 9.8;因为迁移到Jakarta Batch规范,为保持一致,将一些与 JSR-352(Java平台的批处理应用程序)相关的 Maven 构件进行了重命名。


Apache Software Foundation


Apache Maven 4.0.0 发布第八个alpha版本,带来了一些重要的变化,如:不再支持Plexus XML,而是改为使用StAX/Woodstox进行 XML 解析;引入了用于未来 Maven 版本的 4.1.0 POM 模型;在构建 POM 中附加了一个build分类器,用于简化构建/使用者实现。有关该版本的更多详细信息可以在版本说明中找到。


Apache Camel 4.0.2发布,带来了问题修复、依赖项升级和新特性/改进,如:可以使用旧的 Micrometer 计量名称或遵循新的 Micrometer 命名约定;Dev 控制台支持子文件夹上传;对EndpointHelper类中定义的matchEndpoint()方法进行了优化,避免使用端点正则表达式。有关该版本的更多详细信息可以在版本说明中找到。


为了保持与 Quarkus 的一致性,Camel Quarkus发布了版本 3.5.0,解决了一些问题,如:由于未初始化时区信息而导致的CamelOracleJdbcTest执行失败;在配置了 SSL 的情况下 Kafka 容器启动失败;与FastCamelContext类相关的UnsupportedOperationException。有关该版本的更多详细信息可以在版本说明中找到。


JHipster


JHipster Lite 0.46.0 已经发布,带来了文档方面的改进、依赖项升级和增强特性,如:使用更通用的脚本 shebang 行,修复与NixOS的兼容性问题;在 Landscape MiniMap 中添加了交互功能,如悬停和选择。有关该版本的更多详细信息可以在版本说明中找到。


JDKMonitor


在摩洛哥 Devoxx 大会上,Azul 首席工程师Gerrit Grunwald介绍了一款新的 macOS 桌面小部件 JDKMonitor,用于显示距离下一个 OpenJDK 发布/更新的天数。这个小部件还可以显示最近四个长期支持版本的最新版本的特性,可以将它们作为 JDK 或 JRE 下载,还可以选择是否捆绑 JavaFX。这个小部件需要 macOS Sonoma 才能运行,并可以从App Store下载。


原文链接

https://www.infoq.com/news/2023/10/java-news-roundup-oct23-2023/

2023-11-09 08:009856

评论

发布
暂无评论
发现更多内容

如何写一篇百万阅读量的文章

六月的雨在InfoQ

内容 个人提升 写作技巧

议程速递 | 7月27日分论坛议程一览

kk-OSC

开源 开放原子全球开源峰会

JAVA编程规范之ORM 映射

源字节1号

后端技术

微服务化解决文库下载业务问题实践

百度Geek说

Java 微服务

基于 Flink CDC 实现海量数据的实时同步和转换

Apache Flink

大数据 flink 编程 流计算 实时计算

程序员培训学习后好找工作吗?

小谷哥

开放原子开源基金会OpenHarmony工作委员会主席侯培新寄语OpenAtom OpenHarmony分论坛

OpenHarmony开发者

OpenHarmony

莫慌!Java 多商户外贸版系统这不就来了么

CRMEB

Linux 常用命令(二)

五分钟学大数据

Linux 7月月更

智能合约dapp系统开发流程技术

开发微hkkf5566

Happens-Before原则深入解读

转转技术团队

Java JVM java 并发

Okaleido生态核心权益OKA,尽在聚变Mining模式

小哈区块

一文详解Nodejs中fs文件模块与path路径模块

timerring

node.js path FS 签约计划第三季

Flink 在 讯飞 AI 营销业务的实时数据分析实践

Apache Flink

大数据 flink 编程 流计算 实时计算

Python图像处理丨两种实现图像形态学转化运算

华为云开发者联盟

Python 人工智能 图像处理 图像

SAP ABAP Netweaver 容器化的一些前沿性研究工作分享

汪子熙

SAP abap Netweaver Docker 镜像 7月月更

2022首发!全网最详细深入剖析Java虚拟机文档(源码实例详解)

了不起的程序猿

Java JVM java程序员 Java 开发

元宇宙GameFi链游系统开发NFT技术

薇電13242772558

NFT 元宇宙 链游

期待已久的 RocketMQ Summit 等待你的参与!

阿里巴巴云原生

Apache 阿里云 RocketMQ 云原生 消息队列

SAP ABAP 守护进程的实现方式

汪子熙

操作系统 守护进程 SAP abap 7月月更

一文辨析 Java、JSP、JavaScript

攻城狮杰森

Java JavaScript jsp 7月月更

社区点赞业务缓存设计优化探索

得物技术

缓存 后端 重构 方案设计

Python 高阶

Damon

7月月更

Okaleido生态核心权益OKA,尽在聚变Mining模式

西柚子

10 个 Reduce 常用“奇技淫巧”

掘金安东尼

JavaScript 前端 7月月更

武林头条-建站小能手争霸赛

hum建应用专家

数据库 wordpass

7月27日19:30直播预告:HarmonyOS3及华为全场景新品发布会

HarmonyOS开发者

HarmonyOS

后端服务性能测试能力建设101

RingCentral铃盛

typescript 后端 ansible node,js SDET

数据中台建设(二):数据中台简单介绍

Lansonli

数据中台 7月月更

大咖观点+500强案例,软件团队应该这样提升研发效能!

万事ONES

向日葵资深产品总监技术分享:如何在AD域环境下应用

贝锐

安全 AD域 远程控制 向日葵

Java近期新闻:Helidon 4.0、Eclipse Serializer 1.0和JDK 22 JEP_编程语言_Michael Redlich_InfoQ精选文章