写点什么

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

评论

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

华为云CodeArts Build快速上手编译构建-进阶玩家体验

华为云PaaS服务小智

云计算 编译 开发 华为云

如何评估大型语言模型(LLM)?

Baihai IDP

人工智能 深度学习 大模型 白海科技 大模型评估

AI+电力、大模型主题人工智能师资培训班重磅招募中

飞桨PaddlePaddle

人工智能 百度 paddle

细说敏捷测试-敏捷实战中的探索 | 京东云技术团队

京东科技开发者

敏捷开发 测试 敏捷测试 企业号 6 月 PK 榜

海南正规等级保护测评单位有哪些?叫什么名字?

行云管家

等保 等级保护 海南 等保测评单位

CSS小技巧之悬停3D发光效果

南城FE

CSS 前端 动画 3D 交互

使用华为云AstroZero,不用一行代码,制作端午节加班申请模板

华为云PaaS服务小智

云计算 零代码 华为云

一种实现Spring动态数据源切换的方法 | 京东云技术团队

京东科技开发者

spring aop 企业号 6 月 PK 榜 数据源切换

模型当道 开源聚力|2023开放原子全球开源峰会开源大模型分论坛圆满收官

开放原子开源基金会

开源 大模型 开放原子全球开源峰会 开放原子

漫谈 SAP 产品里页面上的 Checkbox 设计与实现

汪子熙

SAP 前端设计 思爱普 6 月 优质更文活动

Airtest图像识别测试工具原理解读&最佳实践 | 京东云技术团队

京东科技开发者

图像识别 移动开发 UI自动化测试 企业号 6 月 PK 榜 Airtest

Java 中优雅的 RESTful API 设计:实现高效且易维护的接口

xfgg

Java RESTful API 6 月 优质更文活动

浅谈API安全

权说安全

API 安全

Vue3中常用的Composition(组合)API-watch(监视)函数

不觉心动

6 月 优质更文活动

基础设施SIG月度动态:ABS新增ISO、VHD镜像构建,自动热补丁制作流程正式上线

OpenAnolis小助手

镜像 基础设施 龙蜥社区 sig abs

手牵手带你实现mini-vue | 京东云技术团队

京东科技开发者

Vue 数据绑定 vue2 企业号 6 月 PK 榜 双向数据绑定

TBB 开源库及并发 Hashmap 的使用

KaiwuDB

KaiwuDB TBB开源库 Hashmap使用

软件测试/测试开发丨Pytest结合数据驱动-CSV

测试人

程序员 软件测试 自动化测试 csv pytest

在人工智能冲击下,IT部门的生存价值在哪里?

FN0

AIGC

随机2D形状周围层流预测!基于飞桨实现图形神经网络

飞桨PaddlePaddle

人工智能 百度 飞桨

vivo 游戏黑产反作弊实践

vivo互联网技术

游戏黑产 游戏礼券

高性能网络 SIG 月度动态:联合 IBM 就 SMC v2.1 协议升级达成一致,ANCK 率先完成支持

OpenAnolis小助手

开源 ibm 高性能网络 anck 龙蜥sig

AI关于AI民主化的高见

FN0

AIGC

Java 内存与缓存管理:应对大数据场景的优雅高效策略

xfgg

Java 6 月 优质更文活动

详解4种模型压缩技术、模型蒸馏算法

华为云开发者联盟

人工智能 华为云 华为云开发者联盟 企业号 6 月 PK 榜

一文读懂ChatGPT的工作原理:大语言模型是个啥?它到底咋工作的?

禅道项目管理

#人工智能 ChatGPT AI 2022

300行代码模拟cdn访问过程

蓝胖子的编程梦

CDN DNS CDN加速 CDN技术 #DNS

海外交友源码平台搭建:基础功能的实现(一)

山东布谷科技

软件开发、 源码搭建 海外市场 语音交友源码

蚂蚁集团自动化混沌工程 ChaosMeta 正式开源

ChaosMeta

高可用 混沌工程 故障演练 kubernetes 运维 混沌测试

IT自动化运维工具用哪款?需要考虑哪些因素?

行云管家

IT运维 自动化运维 IT自动化运维

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