AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

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

评论

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