写点什么

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:0012803

评论

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

Vue组件是怎样挂载的

yyds2026

Vue

分析服务用多维度、多场景的用户分层,带您深度玩转精细化游戏运营

HarmonyOS SDK

分析

NFT卡牌链游系统开发Web3游戏技术

薇電13242772558

dapp web3

手把手教你成为荣耀开发者:如何进行注册与认证?

荣耀开发者服务平台

开发者 手机 新手指南 荣耀 honor

分布式事务-引出分布式事务

zarmnosaj

10月月更

随需应变,快速开发工作流

力软低代码开发平台

戴尔Precision 3660工作站:设计师手里的金刚钻

科技热闻

Vue3的基本指令

渔戈

前端 Vue3 10月月更

Kubernetes fror Flink 硬气功实践

CTO技术共享

flink 个人成长 10月月更

开源日志收集 肿么选型??

CTO技术共享

个人成长 log 10月月更

EMQ x 阿里云:云上高效构建,IoT 数据一站处理|直播预告

阿里云弹性计算

物联网 IoT 计算巢

创新引擎,值得信赖的生产力工具PowerEdge T550塔式服务器

科技热闻

Vue响应式系统原理并实现一个双向绑定

yyds2026

Vue

navicat的使用与数据库的DML操作

渔戈

MySQL SQL语句 10月月更

戴尔Latitude5000——回归职场初心

科技热闻

LP流动性质押挖矿dapp系统开发详情(案例演示)

开发微hkkf5566

Vue模板是怎样编译的

yyds2026

Vue

手把手完成智慧路灯的开发,完成设备上云【华为云IoT】

DS小龙哥

10月月更

ElasticSearch + Kibana for Kubernetes 硬气功实践 2

CTO技术共享

elasticsearch 个人成长 10月月更

邂逅Vue3

渔戈

前端 Vue3 10月月更

长安链源码分析之网络模块 net-liquid(7)

文本识别与检测-【技术白皮书】第三章-第二节: 基于分割的场景文本检测方法

合合技术团队

人工智能 神经网络 文字识别 自然语言理解

秒云入选2022年成都市新经济梯度培育企业

MIAOYUN

成都市新经济梯度培育企业

云安全和传统安全有什么区别?又有什么关系?

行云管家

网络安全 数据安全 云安全

30+场技术论坛 1000+科技新品发布 今年云栖大会我们关注什么?

阿里技术

云栖大会

工作四年,靠这份Java面试宝典,跳槽到阿里,月薪直涨12K

收到请回复

Java 面试 语言 & 开发 金九银十

SAP | abap的数据对象

暮春零贰

SAP 10月月更 数据对象

外包和自研应该选择呢?教你三招选出最合适自己的平台

千锋IT教育

长安链源码分析之网络模块 net-liquid(6)

SUSE 推出业界首个自适应 Linux 平台原型

Anthony

Linux 自适应

华为架构师亲手操刀,世界五百强都在用的kafka也就那么回事

程序知音

Java kafka 架构 后端技术

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