NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

Java 近期新闻:JCP 25 周年、外部函数 & 内存 API、Eclipse Epicyro

  • 2023-10-06
    北京
  • 本文字数:4437 字

    阅读完需:约 15 分钟

大小:2.61M时长:15:12
Java近期新闻:JCP 25周年、外部函数&内存API、Eclipse Epicyro

OpenJDK

上个周,JEP 454(外部函数&内存API)已经从 JEP Draft 8310626 状态提升Candidate 状态。该 JEP 建议最终确定这个已经经历了两轮孵化和三轮预览的特性:JEP 412(外部函数&内存API第一轮孵化)在 JDK 17 中交付;JEP 419(外部函数&内存API第二轮孵化)在 JDK 18 中交付;JEP 424(外部函数&内存API第一次预览)在 JDK 19 中交付;JEP 434(外部函数&内存API第二次预览)在 JDK 20 中交付;JEP 442(外部函数&内存API第三次预览)将在即将发布的 JDK 21 GA 版本中交付。自上一个版本以来的改进包括:新增清单属性Enable-Native-Access,使可执行 JAR 文件中的代码可以调用受限方法,而无需使用--enable-native-access标识;允许客户端以编程方式构建 C 函数描述符,避免使用特定于平台的常量;改进对本地内存可变长数组的支持;在本地字符串中支持多个字符集。

 

JCP

2023 年 9 月 13 日,纽约Java特别兴趣小组Garden State Java用户组在纽约市的纽约梅隆银行举办了一场特别活动,来自 JCP(Java Community Process)执行委员会(EC)的行业专家参加了小组讨论,谈了他们在 JCP EC 最美好的回忆以及在即将发布的 JDK 21 GA 版本中最喜欢的功能。庆祝活动包括 Bellsoft 性能架构师Dmitry Chuyko的 JDK 21 演示,以及 JCP 25 周年庆典。要了解有关此次活动的更多细节,请阅读InfoQ的这篇新闻报道

 

JDK 21

Build 35仍是 JDK 21早期访问构建的当前构建。要了解关于这个版本的更多细节,请查看发布说明

 

JDK 22

JDK 22早期访问构建Build 15在上周发布,其中包括 Build 14 的更新,主要是修复了各种问题。要了解关于这个版本的更多细节,请查看发布说明

 

对于JDK 22JDK 21,我们鼓励开发人员通过Java Bug数据库报告 Bug。

 

Spring Framework

经历了两周的平静之后,Spring 团队发布了Spring FrameworkSpring DataSpring Tools的点版本和里程碑版本。

 

Spring Framework 6.1.0的第五个里程碑版本带来了 Bug 修复、依赖项升级和一系列新特性,其中包括:将新的接口RestClient用于可观察性;作为对其 Jakarta Annotations 版本的补充,恢复对 JSR-250(Java 平台通用注解)中定义的@ManagedBean注解和 JSR 330(Java依赖注入)中定义的@Named注解的支持,改进项目向 Spring 6.0 及更高版本的迁移;修改JdbcTestUtils 类中定义的方法签名,使其接受JdbcOperations接口而不是JdbcTemplate类的实例。要了解关于该版本的更多细节,请查看发布说明

 

同样,Spring Framework 6.0.12 和 5.3.30 也带来了 Bug 修复、依赖项升级和一些新特性,其中包括:优化在ClassUtils类中定义的getMostSpecificMethod()方法;优化StringUtils类中的空格检查;消除了在创建 scoped bean 实例时会导致性能瓶颈的冗余的类和注解查找。要了解关于这些版本的更多细节,请查看6.0.125.3.30版本的发布说明。

 

Spring Data 2023.1.0的第三个里程碑版本(代号为 Vaughn)带来了一些值得注意的变化,其中包括:支持 JDK 21;通过配置 Java Executor接口使用虚拟线程;支持 Kotlin值类Spring Data JDBC单查询加载。要了解关于该版本的更多细节,请查看发布说明

 

同样,Spring Data 的 2023.0.4、2022.0.10 和 2021.2.16 版本以及所有的服务版本主要也是修复了 Bug 和和升级了依赖项,其中包括:Spring Data Commons 3.1.4、3.0.10 和 2.7.14;Spring Data MongoDB 4.1.4、4.0.10 和 3.4.16;Spring Data Elasticsearch 5.1.4、5.0.10 和 4.4.16;Spring Data Neo4j 7.1.4、7.0.10 和 6.3.16。

 

用于 Eclipse、Visual Studio Code 和 Theia 的Spring Tools 4.20.0发布,主要特性包括:修复了一些 Bug;支持 Eclipse IDE 2023-09;为了显示特定于 Spring 的验证,改进了 Java Reconciling 支持,并从头开始重新构建,然后为了能适用于大型代码库做了性能优化。要了解关于该版本的更多细节,请查看发布说明

 

Payara

Payara发布了 2023 年 9 月版的Payara平台,其中包括社区版 6.2023.9、企业版 6.6.0 和企业版 5.55.0,主要是提供了安全修复,以解决CVE-2017-12617(这是一个在各种 Apache Tomcat 版本[启用了 HTTP PUT]都存在的漏洞,攻击者可以将特制的 JSP 文件上传到服务器,这样,当它被请求时,它所包含的任何代码都将由服务器执行)和CVE-2023-1370(这是JSON-smart中的一个漏洞,由于没有进行限制,解析嵌套太深的 JSON 结构化数组和对象时可能会导致栈溢出进而导致软件崩溃)。该版本还带来了一些改进,其中包括:从 Jakarta EJB EJBContext接口中删除了过时的方法:getEnvironment()getCallerIdentity()isCallerInRole(Identity),这些方法是在 Payara EJBContextImpl类中实现的;改进了 Hazelcast CP Subsystem的功能。要了解关于这些版本的详细信息,请查看社区版6.2023.9企业版6.6.0企业版5.55.0的发布说明。

 

Quarkus

Red Hat发布Quarkus的 3.3.3、3.2.6 和 2.6.11.Final 版本,修复了CVE-2023-4853(攻击者可以通过该漏洞绕过 HTTP 安全策略,因为这些安全策略在接受请求时没有正确地清除某些字符排列,从而导致对权限的判断错误,导致未经授权的端点访问和拒绝服务)。要了解关于这些版本的更多细节,请查看3.3.33.2.62.16.11版本的变更日志。

 

Micronaut

Micronaut 基金会发布Micronaut 4.1.1版本,其中包括Micronaut Core 4.1.5和模块更新:Micronaut Oracle CloudMicronaut AOTMicronaut DataMicronaut KafkaMicronaut Kotlin IntegrationsMicronaut TestMicronaut ValidationMicronaut Multitenancy。要了解关于该版本的更多细节,请查看发布说明

 

Helidon

Helidon 2.6.3 是一个 Bug 修复版本,有一些值得注意的变化,其中包括:用ServerConfiguration接口中定义的namedSocket()方法替换已弃用的socket()方法;更新在ServerRequest接口中定义的requestduri()方法,以便可以正确地处理 IPv6 地址格式;将OciMetricsDataTest类中定义的beforeEach()方法的访问指示符从private更改为public,因为 JUnit @BeforeEach注解的文档已明确说明该方法不能是私有或静态的。要了解关于该版本的更多细节,请查看发布说明

 

MicroProfile

在迈向 MicroProfile 6.1 的道路上,MicroProfile Telemetry规范的 1.1-RC3 版本修复了JaxRsServerAsyncTestEndpoint TCK 测试类中的一个部署问题。要了解关于该版本的更多细节,请查看发布说明

 

Eclipse 基金会

OmniFishEE推出了一个新的 Eclipse EE4J 项目Epicyro,它将作为Jakarta Authentication规范的兼容实现。该项目将为身份验证机制定义一个通用的低级 SPI。其中的控制器将与调用者和容器环境交互以获取调用者凭据并进行验证,然后将经过身份验证的标识(如名称和组)传递给容器。目前,Epicyro 是一个里程碑版本,从 3.0.0 版本开始,它将与 Jakarta Authentication 3.0.0 保持一致。

 

Apache 软件基金会

Apache Groovy 5.0.0 的第二个Alpha版本提供了 Bug 修复、依赖项升级和改进,其中包括:停止使用曾经在sun.reflect包中定义的MagicAccessorImpl类;JsonOutput类应该像处理 POGO(Plain Old Groovy Object)那样处理 Java 记录;使用@Generated注解将 Groovy 脚本中的main/run方法标记为由编译器生成。要了解关于该版本的更多细节,请查看发布说明

 

同样,Apache Groovy 4.0.15发布,也修复了一些 Bug,升级了依赖项,并改进了JsonOutput类,使其可以像处理 POGO 那样处理 Java 记录。要了解关于该版本的更多细节,请查看发布说明

 

为了与 Quarkus 保持一致,Camel Quarkus 3.2.0提供了一些值得注意的问题解决方案,涉及:在dev模式下 gRPC 应用程序编译失败;扩展SplunkSaxonicagRPC扩展的测试覆盖;在使用LDAP域扩展执行完整性检查时的InvocationTargetException。要了解关于该版本的更多细节,请查看发布说明

 

Grails

Grails 基金会推出了一个重新设计的Grails插件门户,主要特性包括:改进了搜索功能;所有插件的分页列表;排名靠前的插件列表;最新发布的插件。该门户的前一个版本一直为频繁停机、资源利用率高和性能差所困扰。

 

Micrometer

Micrometer Metrics的 1.12.0-M3、1.11.4、1.10.11 和 1.9.15 版本都提供了依赖项升级,并修复了一个 Bug,以确保LongTaskTimerFunctionTimer接口产生的数据一致。1.12.0-M3 版本提供的新特性包括:hasAnObservationWithAKeyValue()方法的一个变体,用于测试KeyValue接口;提供一种方法,基于ObservationPredicate接口(即 Java BiPredicate接口)中的父节点来决定是否使用 Spring Security 中的/actuator端点;向Observation接口中定义的嵌套Event接口添加时间戳。要了解关于这些版本的更多细节,请查看1.12.0-M31.11.41.10.111.9.15版本的发布说明。

 

同样,Micrometer Tracing的 1.2.0-M3、1.1.5 和 1.0.10 版本也都提供了依赖项升级和 Bug 修复,其中包括:当线程完成任务后,ObservationAwareSpanThreadLocalAccessor类不释放嵌套的SpanAction类实例;添加ThreadLocalAccessor接口,使用 Reactor 来传播Baggage接口的实例。1.2.0-M3 版本有一个新特性,即允许在 span 上设置事件的时间戳。要了解关于这些版本的更多细节,请查看1.2.0-M31.1.51.0.10版本的发布说明。

 

Piranha

Piranha 23.9.0发布,带来了一些值得注意的变化,其中包括:新增PidFeature类,改进进程 ID 的处理;修复了SonarCloud的一个测试问题;新增IsolatedWebAppFeature类,改进对 Web 应用程序的处理。要了解关于该版本的更多细节,请查看官方文档问题跟踪系统

 

JobRunr

JobRunr 6.3.1 发布。这是一个基于持久化存储的分布式 Java 后台处理库。该版本有一些显著的变化:如果quarkus.jobrunr.job-scheduler.enabled属性设置为false,则 Quarkus 扩展会抛出NullPointerException;添加缺失的 Spring AOT 提示,提示缺失会导致使用 JobRunr 6.3.0 和 Spring Boot 3.1.3 的应用程序异常;在升级到 Spring Boot 3.1.2 和 JobRunr 6.3.0 之后,@Job注解不注册JobFilter接口的实例。要了解关于该版本的更多细节,请查看发布说明

 

JHipster

JHipster Lite 0.42.0发布,其中包括 Bug 修复、依赖项升级和新特性/增强,诸如:新增StatisticsCriteria类,用于向/stats端点添加标准;删除不必要的 TestNG 依赖;新增 checkstyle 模块,用于在构建期间检查未使用的导入。要了解关于该版本的更多细节,请查看发布说明

 

Reactor 项目

Reactor 2023.0.0 的第三个里程碑版本升级了依赖项,包括:reactor-core 3.6.0-M3reactor-pool 1.0.2reactor-netty 1.1.11reactor-kafka 1.3.21。此外,2023.0.0-M3 版本也进行了调整,其中reactor-addons 3.5.1reactor-kotlin-extensions 1.2.2构件保持不变。要了解关于这个版本的更多细节,请查看变更日志

 

同样,第11个维护版本Reactor 2022.0.11 也升级了依赖项,包括:reactor-core 3.5.10、 reactor-netty 1.1.11、 reactor-kafka 1.3.21 和reactor-pool 1.0.2。2022.0.11 版本也进行了调整,其中reactor-addons 3.5.1 和reactor-kotlin-extensions 1.2.2构件保持不变。要了解关于该版本的更多细节,请查看变更日志

 

原文链接:

https://www.infoq.com/news/2023/09/java-news-roundup-sep11-2023/

2023-10-06 08:005874

评论

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

react源码中的协调与调度

flyzz177

React

软件质量问题造成损失高达 2.4 万亿美元!

SEAL安全

软件质量 漏洞管理 12 月 PK 榜 软件供应安全

【圣诞节】会呼吸的玫瑰爱心代码 -李峋爱心续 动画演示思路 代码开源

非喵鱼

Java Python 程序员 前端 爱心代码

谈谈前端性能优化-面试版

loveX001

JavaScript

React组件之间的通信方式总结(下)

beifeng1996

React

es6中箭头函数解析

达摩

ES6 箭头函数

字节前端高频vue面试题及答案

bb_xiaxia1998

Vue

React源码分析7-state计算流程和优先级

flyzz177

React

那些你不知道的 CSS 自定义形状网格布局 3

南城FE

CSS 前端 布局

0停机迁移Nacos?Java字节码技术来帮忙

华为云开发者联盟

Java 云计算 华为云 12 月 PK 榜

react面试题合集

beifeng1996

React

什么是CodeArts

华为云开发者联盟

云计算 后端 华为云 12 月 PK 榜 软件开发生产线

React源码分析8-状态更新的优先级机制

flyzz177

React

前端必会react面试题及答案

beifeng1996

React

react源码中的hooks

flyzz177

React

前端工程师leetcode算法面试必备-二叉树深度广度遍历

js2030code

JavaScript LeetCode

React组件之间的通信方式总结(上)

beifeng1996

React

前端vue面试题(持续更新中)

bb_xiaxia1998

Vue

前端工程师leetcode算法面试必备-二叉树的构造和遍历

js2030code

算法 LeetCode

前端二面常考面试题(必备)

loveX001

JavaScript

经常会采坑的javascript原型应试题

loveX001

JavaScript

OpenTelemetry系列 (二)|初探OpenTelemetry

骑牛上青山

Java 调用链 OpenTelemetry 微服务调用链

假如问:你是怎样优化Vue项目的,该怎么回答

bb_xiaxia1998

Vue

架构实战营模块二作业

张Dave

运维进阶训练营 -W07H

赤色闪电

运维

react源码中的fiber架构

flyzz177

React

用javascript分类刷leetcode3.动态规划(图文视频讲解)

js2030code

JavaScript LeetCode

从React源码分析看useEffect

flyzz177

React

异构混排在vivo互联网的技术实践

vivo互联网技术

算法 异构 混排

前端面试什么样的回答才能让面试官满意

loveX001

JavaScript

CartoonGAN论文复现:如何将图像动漫化

华为云开发者联盟

人工智能 华为云 12 月 PK 榜

Java近期新闻:JCP 25周年、外部函数&内存API、Eclipse Epicyro_编程语言_Michael Redlich_InfoQ精选文章