2025上半年,最新 AI实践都在这!20+ 应用案例,任听一场议题就值回票价 了解详情
写点什么

Java 近期新闻:OpenJDK 更新,Piranha Cloud,Spring Data 2024.0.0,GlassFish,Micrometer

  • 2024-05-29
    北京
  • 本文字数:4465 字

    阅读完需:约 15 分钟

大小:2.23M时长:12:59
Java 近期新闻:OpenJDK 更新,Piranha Cloud,Spring Data 2024.0.0,GlassFish,Micrometer

OpenJDK

JEP 477(隐式声明类和实例主方法(第三预览版本))已为 JDK 23 从 Candidate 进入Proposed to Target 状态。该 JEP 原名为“未命名类和实例主方法(预览)”、“灵活主方法和匿名主类(预览)”,以及“隐式类和增强主方法(预览)”,根据 JDK 22 中发布的 JEP 463(隐式类和实例主方法(第二预览版本))和 JDK 21 中发布的 JEP 445(未命名类和实例主方法(预览))这前两轮预览中收到的反馈进行了改进。该 JEP 中建议“发展 Java 语言,让学生可以不用了解大型程序设计的语言特点,就能编写自己的第一个程序。”JEP 477 推进了甲骨文公司的 Java 语言架构师 Brian Goetz在 2022 年 9 月发布的博文《铺设高速入口匝道(Paving the on-ramp)》。最新的规范文档由甲骨文公司技术顾问成员Gavin Bierman 起草,现开放供 Java 社区审阅。关于 JEP 445 的更多详细信息,请参见 InfoQ 新闻。审阅工作预计将于 2024 年 5 月 21 日结束。


JEP 482(灵活的构造体(第二预览版本))已从 JEP 草案 8325803 进入 Candidate 状态。该 JEP 提议开始第二次预览并修改名称以获得上一次预览(即 JDK 22 中交付的 JEP 447(super(……)之前的语句(预览)))的反馈。这项功能允许在构造函数中调用 this()super() 之前出现不引用实例创建的语句,同时也保留了构造函数现有的安全性和初始化。这项 JEP 中的变更包括:对本地类的处理;将“在显式构造函数调用前不能访问字段”的限制放宽为“在显式构造函数调用前不能读取字段”。甲骨文公司技术顾问 Gavin Bierman 提出了该 JEP 的初步规范供 Java 社区审阅并提供反馈意见。


JEP 481(范围值(第三预览版本))已从 JEP 草案 8331056 进入 Candidate 状态。这项原名为“Extent-Local 变量(孵化)”进入了第三轮预览,吸取了一轮孵化(于 JDK 20 中交付的 JEP 429(范围值(孵化)))和两轮预览(于 JDK 22 中交付的 JEP 464(范围值(第二预览版本))和于 JDK 21 中交付的 JEP 446(范围值(预览)))中的经验和反馈,提供了一处改动:允许在线程内和线程间共享不可变数据。与线程的本地变量相比,这一功能更受欢迎,尤其是在使用大量虚拟线程的情况下。该功能的改动与 ScopedValue 类中定义的 callWhere() 方法的操作参数有关,该参数现在是一个功能接口,允许 Java 编译器推断是否需要抛出检查到的异常。有了这项改动,getWhere() 方法已不再需要且已被移除。

JDK 23

JDK 23 早期访问构建第 23 版已于上周发布,该版本是对第 22 版的更新,其中包括对多项问题的修复。有关此版本的更多详细信息,请参见发布说明

GlassFish

GlassFish第六里程碑版本 8.0.0,提供问题修复、依赖升级及显著变更,其中包括:优化 Jakarta 上下文和依赖注入 TCK(技术兼容性套件);全新的独立 Jakarta JSON 格式处理 TCK 运行程序;以及为匹配 WeldBeanDeploymentArchive 接口实现而优化的类加载器。有关此版本的更多详细信息,请参见发布说明

GraalVM

甲骨文实验室发布了Native Build Tools0.10.2 版本,该 GraalVM 项目是由用于与 GraalVM 原生镜像交互的插件组成。本次版本提供了一些显著变更,其中包括:新增一个默认值为 false 的参数,允许跳过 POM 类型模块的原生镜像构建,从而实现向后兼容性;优化 ClassPathDirectoryAnalyzer 类,其中涵盖对 ignoreExistingResourcesConfig 字段的布尔值检查。有关此版本的更多详细信息,请参见更新日志

Spring 框架

Spring 框架第二里程碑版本 6.2.0 交付,提供问题修复、文档优化、依赖升级和新功能,其中包括:ServerRequest 接口中新增 pathVariableOrNull() 方法,作为 Kotlin 扩展中 pathVariable() 方法的可空变体;CodeFlow 类中新增 generateCodeForArgument() 方法,以提供与 SpelNodeImpl 类中定义方法相同的功能;新增 CompilableIndexAccessor 接口,以支持在 IndexAccessor 接口中自定义表达式的编译。有关此版本的更多详细信息,请参见发布说明


同样,Spring 框架的 6.1.7、6.0.20、5.3.35 版本均已发布,提供问题修复、文档优化和显著变更,其中包括:

三个版本分别提供了对 Protect Reactor 的 2023.0.6、2022.0.19 及 2020.0.44 版本的依赖升级。有关这些版本的更多详细信息,请参见6.1.7 版本6.0.20 版本5.3.35 版本的发布说明。


Spring Data的 2024.0.0 版本现已发布,提供新功能,其中包括:优化实体和属性相关注解中的表达式并支持值表达式,与 Spring 框架的 @Value 注解保持一致,兼容 MongoDB 5.0 中新驱动程序内的一个废弃 API(现已移除)。除此之外,其他子项目也有升级:Spring Data Commons 3.3.0 版本;Spring Data MongoDB 4.3.0 版本;Spring Data Elasticsearch 5.3.0;以及 Spring Data Neo4j 7.3.0 版本。该版本将包含在即将发布的 Spring Boot 3.3.0 版本中。有关此版本的更多详细信息,请参见发布说明


同样,Spring Data 的 2023.1.6 和 2023.0.12 版本也已发布,为以下子项目提供问题修复和相关依赖升级:Spring Data Commons 3.2.6 和 3.1.12 版本;Spring Data MongoDB 4.2.6 和 4.1.12 版本;Spring Data Elasticsearch 5.2.6 和 5.1.12;以及 Spring Data Neo4j 7.2.6 和 7.1.12 版本,这些版本在即将发布的 Spring Boot 3.2.6 和 3.1.12 可分别引用。


Spring Web Services 的 4.0.11 版本发布将依赖关系升级到 Spring 框架 6.0.20 版本,并提供以下显著变更:在 JmsIntegrationTest 类的每个测试方法前后取消 Apache ActiveMQ EmbeddedActiveMQ Artemis 服务器实例的启动和停止,从而提高测试性能;使用 Wss4jHandler 类的 MessageContext 接口重写安全密码,从而有效支持每个请求的凭据。有关此版本的更多详细信息,请参见发布说明

Quarkus

Quarkus 的 3.10.1 版本 发布提供了依赖升级和显著变更,其中包括:移除 QuarkusClassLoader 类中定义 getResources() 方法返回 null,可能导致 NullPointerException 的异常出现;解决使用 @MockitoConfig 模拟 GitInfo 接口实现时出现的问题,该注解时利用了 AnnotationsTransformer API,但后者不适用于 synthetic bean(指元数据在 Quarkus 扩展中以编程方式创建的 bean)。有关此版本的更多详细信息,请参见更新日志

Apache 软件基金会

Apache Tomcat 的 10.1.24 版本发布提供了问题修复和显著变更,其中包括:重构 trailer 字段的处理,使用 MimeHeaders 类的实例存储 trailer 字段;纠正异步调度请求的 AsyncListener 接口中定义的 onError() 方法的错误处理;解决了非现有资源的 WebDAV 锁问题。有关此版本的更多详细信息,请参见发布说明

Hibernate

Hibernate Search首个 Alpha 版本 7.2.0,提供了依赖升级和对 Search DSL 的优化,其中包括:对数字和日期字段应用 queryStringsimpleQueryString 谓词的能力;使用谓词 match 定义匹配项最小数量;以及用新增的 @DistanceProjection 注解将构造函数参数映射到距离映射。有关此版本的更多详细信息,请参见发布说明

Micrometer

Micrometer Metrics 的 1.13.0 版本提供问题修复、文档优化、依赖升级及诸多新功能,其中包括:支持类上使用 @Counted 注解,更新 CountedAspect 类以处理类上使用 @Counted 的情况;移除在 PrometheusMeterRegistry 类中定义的 getConventionName() 的不必要调用;允许在 PushMeterRegistry 抽象类中实现自定义日志启动消息。有关此版本的更多详细信息,请参见发布说明


同样,Micrometer Metrics 的 1.12.6 和 1.11.12 版本提供了依赖升级和错误修复,其中包括:DefaultJmsProcessObservationConvention 类中的 NullPointerExceptionAnnotationHandler无法查看父类中的方法。有关此版本的更多详细信息,请参见 1.12.6 版本1.11.12 版本的发布说明。


Micrometer Tracing 的 1.3.0 版本发布提供了问题修复、依赖升级和新功能,其中包括:新增用于改善集成测试的 TestSpanReporter 类,其中包含声明用于生成追踪的 Bean 的组件;以及在 SimpleSpanBuilder 类的 Tracer 接口中声明 setParent()setNoParent() 的实现。有关此版本的更多详细信息,请参见发布声明


同样,Micrometer Tracing 的 1.2.6 和 1.1.13 版本分别提供了对 Micrometer Metrics 1.12.6 和 1.11.12 版本的依赖升级,并解决了 ObservationAwareBaggageThreadLocalAccessor 类实例因 JUnit 的 @ParameterizedTest 注解而以错误顺序并行执行测试,干扰了作用域嵌套导致返回结果中跨度和追踪的错误,从而丢失作用域的问题。有关这些版本的更多详细信息,请参见1.2.6 版本1.1.13 版本的发布声明。

Project Reactor

Project Reactor第二里程碑版本发布(2024.0.0)提供对 reactor-core 3.7.0-M2reactor-pool 1.1.0-M2reactor-netty 1.2.0-M2 的依赖升级。此外,reactor-kafka 1.4.0-M1reactor-addons 3.6.0-M1reactor-kotlin-extensions 1.3.0-M1 工作保持不变,重新调整至 2024.0.0-M2 版本。有关此版本的更多详细信息,请参见更新日志


其次,Project Reactor 的第六维护版本 2023.0.6 也提供了对 reactor-core 3.6.6 的依赖升级。此外,reactor-netty 1.1.19, reactor-kafka 1.3.23, reactor-pool 1.0.5, reactor-addons 3.5.1reactor-kotlin-extensions 1.2.2 工作保持不变,重新调整至 2023.0.6 版本。有关此版本的更多详细信息,请参见 更新日志


此外,Project Reactor 的第十九维护版本 2022.0.19 提供了对 reactor-core 3.5.17reactor-netty 1.1.19 的依赖升级。此外,reactor-kafka 1.3.23reactor-pool 1.0.5reactor-addons 3.5.1reactor-kotlin-extensions 1.2.2 工作保持不变,重新调整至 2022.0.19 版本。有关此版本的更多详细信息,请参见更新日志


最后,Project Reactor 代号 Europium-SR44 的 2020.0.44 版本发布,提供对 reactor-core 3.4.38reactor-netty 1.0.45 的依赖升级。此外,reactor-kafka 1.3.23reactor-pool 0.2.12reactor-addons 3.4.10reactor-kotlin-extensions 1.1.10reactor-rabbitmq 1.5.6 工作保持不变,重新调整至 2020.0.44 版本。有关此版本的更多详细信息,请参见更新日志


Piranha Cloud

Piranha 的 24.5.0 版本发布,提供显著变更,其中包括:新增 Tomcat10xExtension 类,以兼容 Tomcat 10.0+;新增 Glassfish7xExtension 类,以兼容 GlassFish 7.0+;移除 SourceSpy 的项目地图。有关这些版本的更多详细信息,请参见文档问题追踪

JobRunr

分布式且由持久性存储支持的 Java 后台处理库,JobRunr 的 7.1.2 版本已发布,解决了由于 table-prefix 属性未正确设置而导致 DatabaseCreator 类中定义的 validateTables() 方法中出现 BeanCreationException异常。有关该版本的更多详细信息,请参见发布说明

Java Operator SDK

Java Operator SDK 的 4.9.0 版本发布,提供依赖升级和 ReconciliationDispatcher 类中无效日志信息的移除。有关此版本的更多详细信息,请参见发布说明


原文链接:

Java News Roundup: OpenJDK Updates, Piranha Cloud, Spring Data 2024.0.0, GlassFish, Micrometer


2024-05-29 09:314327

评论

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

第九周作业

Geek_4c1353

极客大学架构师训练营

Minikube-运行在笔记本上的Kubernetes集群

网管

学习 Kubernetes k8s minikube k8s入门

Serverless 架构就不要服务器了?

华为云开发者联盟

云计算 Serverless 架构

Java程序员说:世界上有三个伟大的发明【火、轮子、kafka】

Java架构师迁哥

华为云MVP付健权:从机械工程师到AI开发者的华丽转身

华为云开发者联盟

AI 转型 工程师

从基础设施到云原生应用,全方位解读阿里云原生新锐开源项目

阿里巴巴云原生

阿里云 开源 云原生

解读下一代网络:算力网络正从理想照进现实

华为云开发者联盟

AI 5G 网络 云技术

为什么你的“开发速度”和“产品性能”,都比不过竞品?丨开发者必读

葡萄城技术团队

一个隐藏在方法集和方法调用中且易被忽略的小细节

Gopher指北

后端 Go 语言

排序与二分

落曦

阿里云原生中间件首次实现自研、开源、商用“三位一体”,技术飞轮效应显现

阿里巴巴云原生

阿里云 云原生 中间件

第九周 性能优化(三)总结

蓝黑

极客大学架构师训练营

“人上人”大专学历,通过系统的六个学习步骤,艰难4面终砍offer,“跳进”字节跳动

Java架构追梦

Java 架构 字节跳动 面试 微服务

上线操作规范——基础版本

程序员架构进阶

团队管理 开发流程 发布流程 规范

iOS AOP 方案的对比与思考

GrowingIO技术专栏

ios aop

区块链加持,鉴定溯源双保险,科技赋能茅台老酒成零售数字化标杆

CECBC

区块链 大数据 防伪溯源

LeetCode069-x的平方根-easy

书旅

数据结构 算法 Go 语言

云原生趋势下的迁移与容灾思考

阿里巴巴云原生

云原生 迁移 容灾

除了类 Excel, SpreadJS 表格控件还能为系统开发带来什么价值?

葡萄城技术团队

迁移到 Atlassian Data Center 并没有您想象的那么可怕

Atlassian

负载均衡 高可用 Atlassian Jira

Istio 中的智能 DNS 代理功能

Jimmy Song

开源 云原生 Service Mesh istio 服务网格

披星戴月地辛苦割胶或成历史,海南胶园迎来这一“神器”!

华为云开发者联盟

云计算 大数据 IoT

数字货币步伐加快,苏州将于双十二推出数字人民币红包测试

CECBC

数字人民币

架构师训练营 - 第 9 周课后作业(1 期)

Pudding

软件测试系统学习流程和常见面试题

测试人生路

软件测试

架构训练营 - 第9周课后作业 - 学习总结

Pudding

0到1产品需求整理分析模型参考

燕陈华

产品设计 产品需求

开发霸总:我要让所有人知道,这个扫码组件,被你承包了

蚂蚁集团移动开发平台 mPaaS

支付宝 uniapp mPaaS

详解企业管理系统工作流配置

Marilyn

敏捷开发 工作流 软件架构

架构师训练营第 1 期 第 9 周作业

李循律

极客大学架构师训练营

数字货币将使货币政策实施更精准有效

CECBC

数字货币

Java 近期新闻:OpenJDK 更新,Piranha Cloud,Spring Data 2024.0.0,GlassFish,Micrometer_编程语言_Michael Redlich_InfoQ精选文章