写点什么

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

评论

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

adobe 系列应用出现Error无法继续安装,文件已损坏,无法打开解决方法

Rose

FastScripts for Mac(脚本调用工具) v3.3.1激活版

iMac小白

AI实战 | 由浅入深,手把手带你实现Java转型学习助手

EquatorCoco

Java 人工智能 AI AI技术

体育赛事直播平台,为何能成为2024的一匹黑马

软件开发-梦幻运营部

AnyMP4 iPhone Unlocker mac中文激活版 专业iPhone解锁工具

iMac小白

面试官:说说SSO单点登录的实现原理?

不在线第一只蜗牛

程序员 面试 SSO 单点登录

2024-03-02:用go语言,一个句子是由一些单词与它们之间的单个空格组成, 且句子的开头和结尾没有多余空格, 比方说,“Hello World“ ,“HELLO“ ,“hello world h

福大大架构师每日一题

福大大架构师每日一题

BRC-20铭文发行合约系统开发:深度思考与逻辑性

区块链软件开发推广运营

dapp开发 区块链开发 链游开发 NFT开发 公链开发

实时数据驱动:API商品数据接口的三重保证,助力您的业务飞跃

Noah

万字带你走过数据库的这激荡的三年

不在线第一只蜗牛

数据库 开发 数据集

全栈开发(TS,React,Vue, Java, 移动端flutter)接单

hz

10个技巧,3分钟教会你高效寻找开源项目

快乐非自愿限量之名

开源 项目开发

十行代码开发一个AI应用

快乐非自愿限量之名

人工智能 应用开发

安装mac软件时提示已损坏,无法打开,应该移到废纸篓的解决办法

Rose

苹果电脑新手教程:如何开启任何来源选项

Rose

mac电脑 苹果电脑 任何来源

Mellel 6 for Mac(文字处理软件) v6.0.3中文激活版

iMac小白

PullTube for Mac(在线视频下载器) v1.8.5.27中文激活版

iMac小白

Mac延长电池的使用寿命AlDente for Mac电池最大充电限制工具

iMac小白

Middle for Mac(触控板和鼠标增强工具) v1.8.4免激活版

iMac小白

ProPresenter for Mac(现场分屏演示工具) v7.16.1汉化版

iMac小白

Photomator for mac(照片编辑器) v3.3.2中文版

iMac小白

Disk Drill for Mac(数据恢复软件)v5.4.1426中文激活版

iMac小白

苹果电脑有哪些好用的修图软件?

Rose

修图 抠图 Mac软件 照片编辑

已解决org.springframework.web.bind.MissingRequestHeaderException缺少请求头异常的正确解决方法,亲测有效!!!

小明Java问道之路

低代码数智赋能医药行业:开启医药产业数字化转型新篇章

EquatorCoco

低代码 数智化 数智转型 医药行业

“离开”还是“拓展”你的舒适区

Bruce Talk

VUCA 舒适区 反脆弱

低代码与智慧工地:助力建筑行业数字化转型

不在线第一只蜗牛

低代码 数字化 数字转型

AI会夺走程序员的饭碗吗?

算AI

#人工智能

不会使用ps怎么办?适用于苹果Mac的最佳Photoshop替代品

Rose

聊聊 HTTP 性能优化

EquatorCoco

性能优化 网络协议 HTTP

NTFS Disk by Omi NTFS for Mac(NTFS 磁盘管理器) v1.1.4激活版

iMac小白

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