2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Java 近期新闻:JEP 最终草案、Payara 2024 年路线图、TornadoVM IDEA 插件

  • 2024-01-25
    北京
  • 本文字数:3747 字

    阅读完需:约 12 分钟

大小:1.93M时长:11:13
Java近期新闻:JEP最终草案、Payara 2024年路线图、TornadoVM IDEA插件

OpenJDK


Oracle 的 Loom 项目架构师和技术负责人Ron Pressler和 Oracle 软件开发总监Jim Laskey提交了 JEP 草案 8323335隐式声明类和实例主方法(最终)) 。之前被称为 未命名类和实例主方法(预览)灵活主方法和匿名主类(预览)隐式类和增强的主方法(预览),这个 JEP 包含了对之前两轮 预览 反馈的增强,即在 JDK 22 中交付的 JEP 463(隐式类和实例主方法(第二次预览)和在 JDK 21 中交付的 JEP 445(未命名类和实例主方法(预览))。该 JEP 提议“让学生可以在不需要理解太多语言特性的前提下编写他们的第一个程序。”2022 年 9 月,Oracle 的 Java 语言架构师Brian Goetz为此撰写了“Paving the on-ramp”一文。Oracle 技术委员会成员Gavin Bierman发布规范文档初稿,供 Java 社区评审。关于 JEP 445 的更多细节可以在 InfoQ 的其他报道中找到。


在经过了两轮预览之后,Laskey 还提交了 JEP 草案 8323333字符串模板(最终)。前面的两轮预览即在 JDK 22 中交付的 JEP 459(字符串模板(第二次预览))和在 JDK 21 交付的 JEP 430(字符串模板(预览))。该 JEP 提议使用 字符串模板 来增强 Java 编程语言,这些字符串字面量包含嵌入表达式,将在运行时被解释,其中嵌入的表达式将在运行时进行计算和验证。关于 JEP 430 的更多详细信息可以在 InfoQ 的 新闻报道 中找到。

JDK 23


JDK 23 早期访问构建 版本的Build 5 已发布,包含了针对 Build 4 的 更新,其中包括对各种 问题 的修复。关于此版本的更多详细信息可以在 发布说明 中找到。

JDK 22


JDK 22 早期访问构建版本的Build 31 也已发布,包含了针对 Build 30 的 更新,包括对各种 问题 的修复。关于此版本的更多详细信息可以在 发布说明 中找到。


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

Spring Framework


Spring Framework 6.1.3 和 6.0.16 已 发布,包含了错误修复、文档改进、依赖项升级和新特性,例如:在使用 WebClient 接口时,从剩余的单检查点排除包含敏感查询参数的完整请求 URI;如果在预检请求中发送了 Access-Control-Request-Private-Network 标头(Private Network Access),则允许 @CrossOrigin 注解在应用程序中向 Google Chrome 提供 Access-Control-Allow-Private-Network 标头;避免在 CommonAnnotationBeanPostProcessor 类中由于在找到注解之前在外层级别调用而提前解析 ClassUtils 类中定义的 getMostSpecificMethod() 方法。这些版本将与即将发布的 Spring Boot 3.2.2 和 3.1.8 一起提供。关于这些版本的更多详细信息可以在 6.1.36.0.16 的发布说明中找到。


Spring Data 的 2023.1.2 和 2023.0.8 已 发布,包含了错误修复和相应的子项目依赖项升级,例如:Spring Data Commons 3.2.2 和 3.1.8;Spring Data MongoDB 4.2.2 和 4.1.8;Spring Data Elasticsearch 5.2.2 和 5.1.8;以及 Spring Data Neo4j 7.2.2 和 7.1.8。这些版本也可以在即将发布的 Spring Boot 3.2.2 和 3.1.8 中使用。


Spring Web Services 4.0.10 已 发布 ,带来了一些显著变化,例如:支持 jar:nested,这是 uber JAR 资源的 URI Schema,作为 Spring Boot 3.2 新加载器实现的一部分,位于 SchemaFactoryUtils 类中;删除了 Apache HttpComponents HttpClient 接口的重复依赖声明;将 Spring Framework 依赖项升级到 6.0.16。关于这个版本的更多详细信息可以在 发布说明 中找到。


Spring Cloud Dataflow 2.11.2 已发布,带来了一些重要的变化,例如:将 Logback 升级到 1.2.13 ,解决了 CVE-2023-6378问题(这是 Logback 接收器组件中的一种序列化漏洞,允许攻击者通过发送有毒数据来发动拒绝服务攻击);更新 BatchVersion 枚举和 JdbcSearchableJobExecutionDao 类,支持在基于 Batch5 的模式被删除的 JOB_CONFIGURATION_LOCATION 字段;解决了 JdbcSearchableJobExecutionDao 类中的 getJobExecutionsWithStepCountFilteredByTaskExecutionId() 方法不支持 BATCH_ 任务前缀的问题。关于这个版本的更多详细信息可以在 发布说明 中找到。

Payara


Payara 团队对 2023 年进行了回顾,并提供了 Payara 平台 2024 年及以后的路线图。2023 年的亮点包括:发布 Payara Platform 6;支持 JDK 21 和 MicroProfile 6.1;推出Payara Starter。2024 年的路线图包括:对所有 Payara 产品的愿景(直至 2026 年);详细的 Payara Server、Payara Micro、Payara Cloud 和 Payara Developer Tools 路线图;对 Jakarta EE 11 的支持,计划于 2024 年 6 月/7 月发布正式版。更多详细信息可以在 Payara 高级产品经理Louise Castens和 Payara 合同技术作家Luqman Saeed在 2023 年 12 月 Payara 虚拟大会上的演讲“用Jakarta EE赋能企业创新”中找到。

TornadoVM


TornadoVM团队推出了TornadoInsight,一个“开源的用于增强开发者使用 TornadoVM 体验的 IntelliJ IDEA 插件”。关键功能包括:即时静态检查器,实时扫描 TornadoVM 代码并报告 TornadoVM 不支持的 Java 特性;一个动态测试框架,简化了单个 TornadoVM 任务的测试过程。InfoQ 将进一步跟进并发布更详细的新闻报道。

Micrometer


Micrometer Metrics 1.12.2 和 1.11.8 版本均包含了依赖项升级和错误修复,如:POM 文件中io.netty:netty-transport-native-epoll 缺失version声明时报告编译错误;重命名在StepMeterRegistry类中轮询指标的线程;修复在GrpcObservationTest类中定义的unaryRpcAsync()方法,提高并发性。有关这些版本的更多详细信息,请参阅1.12.21.11.8的发布说明。


同样,Micrometer Tracing的 1.2.2 和 1.1.9 版本也都包含了依赖项升级和错误修复,如:SimpleTraceContextBuilder类不会覆盖TraceContext接口的值;手动创建的传递字段不通过ObservationAwareSpanThreadLocalAccessor类进行跨线程传播。有关这些版本的更多详细信息,请参阅1.2.21.1.9的发布说明。

Project Reactor


Project Reactor 第二个维护版本2023.0.2 进行了依赖项升级:reactor-core 3.6.2reactor-netty 1.1.15reactor-pool 1.0.5reactor-kafka 1.3.22reactor-addons 3.5.1reactor-kotlin-extensions 1.2.2保持不变。有关此版本的更多详细信息,请参阅变更日志


Project Reactor 第十五个维护版本2022.0.15 的依赖项升级包括:reactor-core 3.5.14reactor-netty 1.1.15reactor-pool 1.0.5reactor-kafka 1.3.22reactor-addons 3.5.1reactor-kotlin-extensions 1.2.2保持不变。有关此版本的更多详细信息,请参阅变更日志


Project Reactor 2020.0.40,代号 Europium-SR40,发布,包含了依赖项升级:reactor-core 3.4.35reactor-netty 1.0.41reactor-pool 0.2.12reactor-kafka 1.3.22reactor-addons 3.4.10reactor-kotlin-extensions 1.1.10reactor-rabbitmq 1.5.6保持不变。有关此版本的更多详细信息,请参阅变更日志

Apache 软件基金会


Apache Tomcat 11.0.0-M1610.1.189.0.858.5.98均包含了错误修复和显著的变更,例如:重构VirtualThreadExecutor类,使其可以被 NIO2 连接器使用;纠正了问题67675修复中的一个回归,该回归破坏了通常由 OpenSSL 1.0.2 生成的 TLS 密钥文件的解析,这些格式的密钥没有指定显式的伪随机函数,只依赖默认值;;允许在内省的MBeans上进行具有相同名称的多个操作,修复了由于引入第二个addSslHostConfig()方法引起的回归。有关这些版本的更多详细信息,请参阅11.0.0-M1610.1.189.0.858.5.98的发布说明。


Apache Cocoon 2.3.0 发布之后,开发团队最近决定报废Cocoon 的 2.1 和 3.0 分支。最初发布于 20 多年前的 2.1 分支现在被认为已经过时了。3.0 分支试图从头开始重写 Cocoon,但从未最终完成。Apache Cocoon 是一个基于 Spring 的框架(自版本 2.2 起),建立在关注点分离和基于组件开发概念的基础上。

Grails


Grails 基金会发布 Grails Framework 5.3.6 和 3.3.18,其中一些显著变化包括:回滚了最近对 SnakeYAML、Micronaut、Spring 和 Spring Boot 的升级,因为它们不向后兼容;添加手动触发 SDKMan发布的工作流;更新NexusPublishing扩展,将重试延迟从 2000 毫秒增加到 3000 毫秒。有关这些版本的更多详细信息,请参阅5.3.63.3.18的发布说明。

Piranha Cloud


Piranha 23.12.0 已发布,带来了一些显著变化,例如:通过将Eclipse WaSP从 3.2.1 降级到 3.2.0 来解决 Windows 构建失败问题(Eclipse WaSP 是Jakarta PagesJakarta Standard Tag Library的兼容实现);一个新的UberPiranha类和相应的uber模块,用于在命令行初始化 Piranha;为 Piranha Uber 设置临时目录的能力。有关此版本的更多详细信息,请参阅文档问题跟踪

OpenXava


OpenXava 7.2.2发布,包含了依赖项升级和错误修复,例如:在同一行应用多个@RowStyle注解时只考虑其中的一个;[@ListProperties注解在与@Tree@Editor("TreeView")注解结合使用时不支持多属性;在使用日历列表格式时数据库连接泄漏。有关此版本的更多详细信息,请参阅发布说明

Gradle


Gradle 8.6 的第二个候选版本带来以下这些改进:通过GRADLE_ENCRYPTION_KEY环境变量支持配置缓存中的自定义加密密钥;改进错误和警告报告;改进Build Init Plugin,支持各种类型的项目;增强了插件作者和构建工程师为插件开发自定义构建逻辑的构建编写过程。有关此版本的更多详细信息,请参阅发布说明


原文链接

https://www.infoq.com/news/2024/01/java-news-roundup-jan08-2024/

2024-01-25 10:136471

评论

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

云上数据库类产品的模式与发展趋势

韩超

数据库 redis 腾讯云 阿里云

程序员的晚餐 | 5 月 21 日 四季豆炒腊肠

清远

美食

要弄清楚if/switch的本质区别,以及优化方式

张驰

Java

Android | Tangram动态页面之路(六)数据分离

哈利迪

android

数据产品经理实战-开篇

第519区

产品经理

小岑的架构学习笔记-架构设计的历史背景

程序员小岑

c++代码整洁之道

泰伦卢

c c++ C#

KubeSphere权威指南(一)--------使用KubeSphere创建Percona Server,并对外暴露端口

赵欣

k8s percona server

乙己说:NUMA是个啥?

再见小飞侠

jdk G1 ZGC 内存

Golang testing: “no test files”

北纬32°

Go 语言

k8s上运行我们的springboot服务之——简单的架构思考

柠檬

k8s springboot

Python 如何随机打乱列表(List)排序

BigYoung

Python List random 随机

怎么用"设计思维"思考产品?

Yanel 说敏捷产品

产品 设计 产品设计 产品开发

两边夹的应用三

孙苏勇

算法 两边夹

科学理论的反思

美多丽可

学习

乙己说:LRU实现思路整理

再见小飞侠

缓存 LeetCode Go 语言

实战!我用 Wireshark 让你 “看得见“ TCP

小林coding

Linux TCP 计算机网络

永中云转换新升级 文档在线预览增添更多选择

DT极客

我的事务为什么会失效

JFound

spring

Spring注入的对象到底是什么类型

JFound

spring

高内聚与低耦合

落英亭郎

面向对象 高内聚 低耦合

分布式数据库

Leiy

极客时间学习心得:用分类和聚焦全面夯实技术认知

Anfernee Hu

学习

k8s上运行我们的springboot服务之——热点数据

柠檬

redis

[从零学习Spring Cloud]Nacos配置中心

玏佾

Spring Cloud nacos

小岑的架构学习笔记-架构是什么?

程序员小岑

JVM源码分析之JVM启动流程

猿灯塔

健康饮食和定期运动带给我们的一点启示

董一凡

生活质量

语雀性感,印象迟暮。

彭宏豪95

学习 工具 在线办公

深入浅出SpringMVC系列~

程序员的时光

spring springmvc

传统岗位新挑战:信息安全之路

nexpose

安全架构师 安全 安全管理

Java近期新闻:JEP最终草案、Payara 2024年路线图、TornadoVM IDEA插件_编程语言_Michael Redlich_InfoQ精选文章