写点什么

Java 近期新闻:LibericaJDK 支持 RISC-V、Payara Platform、Gradle 8.6、LangChainj 0.26、Spring Cloud

  • 2024-02-23
    北京
  • 本文字数:4275 字

    阅读完需:约 14 分钟

大小:2.11M时长:12:17
Java近期新闻:LibericaJDK支持RISC-V、Payara Platform、Gradle 8.6、LangChainj 0.26、Spring Cloud

OpenJDK

Oracle Java 语言架构师 Brian Goetz 提交了 JEP Draft 8324965(类文件 API(第二次预览))进行第二轮预览,以获取对前一轮预览的反馈:在 JDK 22 中交付的 JEP 457(类文件 API(预览))。这个 JEP 提议提供一个 API 来解析、生成和转换 Java 类文件。这最初将作为 JDK 中 ASM(Java 字节码操作和分析框架)的内部替代品,并计划将其作为公共 API 开放。Goetz 将 ASM 描述为 "一个古老的代码库,带有大量的遗留问题",并提供了 背景信息,说明这个草案将如何发展并最终取代 ASM。

JDK 23

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


JDK 22

JDK 22 早期访问版本Build 34 已发布,包含了针对 Build 33 的 更新,其中包括对各种 问题 的修复。关于这个版本的更多详细信息可以在 发行说明 中找到。


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

GlassFish

GlassFish 7.0.12(第十二个维护版本)主要集中在查找和修复以往出现的几个“奇怪”的 WebSocket 相关 bug 的根本原因上。新特性包括:对 servlet 缓存过滤器的优化,消除在高请求速率下可能多次加载相同资源;在 AdminGUI 中新增了一个新的传输层安全 (TLS) 复选框;向 start-cluster 命令添加了一个新的 --debug 选项,类似于 start-domainstart-instance 命令,可以在调试模式下启动所有实例。关于这个版本的更多详细信息可以在 发行说明 中找到。


GraalVM

Oracle Labs 发布了 0.10.0版本Native Build Tools,这是一个 GraalVM 项目,包含了与 GraalVM 原生镜像互操作的插件。这个最新版本提供了:文档的改进;依赖项升级;支持工作流矩阵中测试数组的并发性;以及减少每次测试执行所需的时间。关于这个版本的更多详细信息可以在 变更日志 中找到。

Spring Framework

Spring Cloud 2022.0.5(代号 Kilburn)已经 发布,其中包括对子项目的更新,例如:Spring Cloud Vault 4.0.2、Spring Cloud Kubernetes 3.0.5、Spring Cloud OpenFeign 4.0.6 和 Spring Cloud Config 4.0.5。其中有一些重大变更,包括:由于在 Spring Framework 6 中移除了 AsyncRestTemplate 类,因此移除了 Spring Cloud LoadBalancer 的自动配置;移除了 spring.cloud.kubernetes.enabled属性,采用 Spring Boot 的 @ConditionalOnCloudPlatform 注解;迁移到 Spring Security OAuth2 客户端,支持 OAuth2。关于这个版本的更多详细信息可以在 发行说明 中找到。

Payara

Payara 发布了 Payara Platform 的 2024 年 1 月份版本,其中包括社区版 6.2024.1 和企业版 6.10.0。两个版本都包含了 bug 修复、组件升级以及对 ARM 架构的 Payara Micro 和 Payara Server Docker 镜像的支持。此外,还对 Okio 3.4.0 和 OkHttp 4.9.2 进行了依赖升级,解决了 CVE-2023-3635 这个漏洞,该漏洞由 Okio 中的一个缺陷引起,GzipSource 类在解析格式错误的 gzip 缓冲区时无法处理处理异常。攻击者可以处理格式错误的文件,从而导致拒绝服务。关于这些版本的更多详细信息可以在 社区版 6.2024.1企业版 6.10.0 的发行说明中找到。

Open Liberty

IBM 发布了 Open Liberty 的 24.0.0.1 版本,其中包括:扩展了对规范和实用工具的即时支持,例如 Jakarta XML Web ServicesJakarta Mail密码实用工具Java 数据库连接应用程序安全;以及验证 Open Liberty 公钥真实性的能力,可以检查签名、验证包是否由 Open Liberty 发布并且自发布以来没有被修改过。


IBM 还发布了基于 Eclipse OpenJ9 0.42 和 OpenJDK jdk-21.0.1+12 的 IBM Semeru Runtime 的开放和认证版本 21.0.1.0,并包含了来自 Oracle 关键补丁更新 的最新 CPU 和安全补丁。

Quarkus

Red Hat 发布了 Quarkus 的 3.7 版本,该版本提供了 bug 修复、依赖项升级和新功能,例如:将 JDK 17 作为基线;支持 Micrometer 的 @MeterTag 注解;以及使用内联证书链进行令牌验证。此版本还解决了两个问题:CVE-2023-5675,在 Quarkus RestEasy Reactive 和 Classic 应用程序中使用端点的授权缺陷,由使用注解处理器自定义的 Quarkus 扩展引起; CVE-2023-6267,一个基于注解的安全漏洞,即资源可能使用 JSON 消息体在评估和应用安全约束之前被处理,即反序列化。关于此版本的更多详细信息可以在 变更日志 中找到。


BellSoft

BellSoft 发布了 Liberica JDK 21,支持 RISC-V 架构,因为该架构在嵌入式系统中的普及程度越来越高。BellSoft 列出了选择 Java 作为 RISC-V 语言的主要原因:


  • 高性能、内存占用小,特别是在嵌入式系统使用他们的 Liberica JDK 时。

  • Java 具有良好的可移植性,采用 一次编写,到处运行 的模型,在生产环境中引入新架构时无需重写应用程序。

  • 有众多标准库可以用于处理任务,开发人员不必为特定用例编写自己的实现。

  • 方便的内存管理,避免内存分配错误。


关于 BellSoft 对 RISC-V 快速扩展和 Java 的评估的更多细节可以在这篇 文章 中找到。

Hibernate

Hibernate ORM 6.4.3.Final 发布,提供了 bug 修复和一个新特性,该特性可以支持使用 Atlas (一个管理数据库 schema 的工具)进行构建的项目中的 Oracle GraalVM。关于此版本的更多详细信息可以在 发行说明 中找到。


Infinispan

Infinispan 15.0.0.Dev08 发布,包括大量的依赖项升级和一些值得注意的变化,例如:将 Square 的 OkHttp 替换为 Java 的 HttpClient;将 TimeoutException 类移动到 org.infinispan.commons 包中,与 CacheException 类位于同一个包中;更新 JGroupsTransport 类,实现了 AddressGenerator 接口(对现有 TransportChannelListener 接口的补充)。关于此版本的更多详细信息可以在 发行说明 中找到。


类似的,Infinispan 14.0.23 也包含了大量依赖项升级和一些值得注意的变化,例如:添加了配置 JGroups bundler 的选项,可以将 transfer-queue 定义为默认的 bundler 类型,并禁用了 TCP SO_LINGER 设置;解决了一个问题,即在 SoftIndexFileStoreRestartTest 中定义的 testStatsUponRestart() 方法会意外复活被替换的值;解决了 TopologyChangeFunctionalTest 类中随机测试失败的问题,原因是更新函数不能正确处理状态传输的重试。关于此版本的更多详细信息可以在 发行说明 中找到。

Grails

Grails 6.1.2 发布,包含了依赖项升级和一些改进,例如:解耦了 Sonatype Nexus Repository 发布和发布作业的配置;与 Groovy 3.0.20 兼容;将任务分解为多个作业,改进了发布工作流程。关于此版本的更多详细信息可以在 发行说明 中找到。

TornadoVM

TornadoVM 1.0.1(第一个维护版本)包含了 bug 修复和一些改进,例如:初步支持 half-precision 数据类型;支持 Java Math 类中定义的 ceil() 方法,并在 TornadoMath 类中为所有后端添加了 ceil() 方法;在设备选择中启用多任务多设备行为作为 TaskGraph API 的一部分。关于此版本的更多详细信息可以在 发行说明 中找到。

Eclipse Vert.x

Eclipse Vert.x 4.5.2 发布,带来了一些值得注意的变化,例如:改进 HostAndPort API,特别是在处理 URI 权限方面;解决了 WebSocket 接口异常处理策略,其中 ConnectionBase 异常处理程序未在 exceptionHandler() 方法中正确设置;弃用在 DatabindCodec 类中定义的 prettyMapper() 方法,因为它不再被需要。关于此版本的更多详细信息可以在 发行说明弃用和重大变更 中找到。


类似的,Eclipse Vert.x 4.4.7 版本也带来了一些值得注意的变化,例如:一个新的 Timer 接口,它扩展了 Vert.x 的 Future 接口,可以用作未来链中的起始点,也可以在未来的组合中使用;确保Task 类的实例在被 Java Executor 拒绝时不在 TaskQueue 中。关于此版本的更多详细信息可以在 发行说明 中找到。


这两个版本都解决了 CVE-2024-1023漏洞,这是 Eclipse Vert.x 工具包中的一个漏洞,由于使用 Netty FastThreadLocal 类提供的数据结构而导致内存泄漏,特别是当 Vert.x HTTP 客户端与不同主机建立连接时。

Graal Cloud Native

Graal Cloud Native (GCN) 4.2.1 (Oracle 的 Micronaut Framework 构建版本)已发布,其中包括:新的 Google Cloud 指南;支持 JDK 21 和 GraalVM Native Image;一个带有 Micronaut Framework 4.2.1 的新材料清单;对 GCN LauncherGCN CLI 进行了更新;更新的 VS Code 工具。InfoQ 将跟进更详细的新闻报道。

OpenXava

OpenXava 7.2.3 发布,带来了 bug 修复、依赖项升级和改进,例如:当在 @Condition 中使用 @ManyToMany 注释时,如果 failOnAnnotationMisuse 属性设置为 true,则记录警告消息或抛出异常;当使用旧版本的 OpenXava 时记录警告消息;可能在应用中使用的新通用标签。关于此版本的更多详细信息可以在 发行说明 中找到。


JetBrains Ktor

JetBrains 发布 Ktor 2.3.8,这是一个用于创建微服务和 Web 应用程序的异步框架,包含了一些改进和问题修复,例如:当 CacheControl 类中定义的 max-age 属性的值大于 Int.MAX_VALUE 时抛出 NumberFormatException;在自定义 JavaScript 引擎中使用 URLBuilder 时,由于自身属性导致的 ReferenceError;在 RequestConnectionPoint 接口中实现了 toString() 方法,改进了日志记录。关于此版本的更多详细信息可以在 变更日志 中找到。

Keycloak

Keycloak 23.0.5 发布,包含了 bug 修复和新特性/增强,例如:在文档中将 Red Hat Data Grid 的引用改为 Infinispan;解决了使用细粒度权限时角色映射选项卡不可见的问题;更新了 AWS Route 53 指南,兼容 Red Hat OpenShift Service on AWS (ROSA) 和 Openshift 4.14.x。

LangChain for Java

LangChain for Java (LangChain4j) 0.26.0 带来了许多 bug 修复、新的集成和特性:高级检索增强生成 (RAG) 基础,灵感来自于这篇文章 和这份白皮书;通过在 LangChain4j Chat API 中实现图像输入并集成 OpenAI 和 Gemini 来支持多模态;在 ConversationalRetrievalChain 类的 execute() 方法中添加了元数据,允许用户在追加检索到的文档信息时添加额外信息。关于此版本的更多详细信息可以在 发布说明 中找到。

Gradle

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


原文链接

https://www.infoq.com/news/2024/02/java-news-roundup-jan29-2024/


欢迎加入 InfoQ 读者技术交流群,与志同道合的朋友一起探讨知识,交流经验。


2024-02-23 10:505694

评论

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

vm虚拟机:VMware Fusion Pro 13 for mac

展初云

虚拟机 Mac软件 VM虚拟机

Project Office X for Mac项目管理软件

展初云

Mac 项目管理软件 Mac软件

如何一键私有化部署 Laf ?

米开朗基杨

多年没有遇到如此流畅的面试了

HoneyMoose

文件夹图标修改器 Folder Factory最新中文版

胖墩儿不胖y

Mac软件 文件夹图标修改工具

What's new in Arana v0.2.0

apache/dubbo-go

MySQL开发

揭开 Amazon Bedrock 的神秘面纱 | 基础篇

亚马逊云科技 (Amazon Web Services)

sdk 生成式人工智能 Amazon VPC

Linux文件的目录结构解析

芯动大师

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进

威廉META

Kubernetes多租户实践

俞凡

架构 Kubernetes 云原生

Aescripts StyleX for Mac激活版(AI高级视频风格化工具)

iMac小白

Aescripts StyleX下载 Aescripts StyleX插件

DaVinci Resolve Studio 18补丁中文包

胖墩儿不胖y

视频处理 Mac软件 视频编辑处理工具

阿尔比特质押 ARBT 代币挖矿系统开发(源码搭建)成熟技术

l8l259l3365

简化

agnostic

软件工程

Python 循环

小万哥

Python 程序员 软件 后端 开发

BOE(京东方)首个智慧医养示范社区启航 树立医养融合新标杆

科技热闻

反敏捷宣言

俞凡

敏捷

Sublime Text 4 for Mac代码编辑器

展初云

软件 Mac 代码编辑器

2023-10-21:用go语言,一共有三个服务A、B、C,网络延时分别为a、b、c 并且一定有:1 <= a <= b <= c <= 10^9 但是具体的延时数字丢失了,只有单次调用的时间 一次调

福大大架构师每日一题

福大大架构师每日一题

Nautilus Chain 与 Coin98 生态达成合作,加速 Zebec 生态亚洲战略进程

鳄鱼视界

Nik Collection 6 for Mac(PS滤镜插件套装) v6.1.0中文激活版

iMac小白

PS滤镜Nik Collection Nik Collection下载 Nik Collection插件

如何发现更多比特币大户钱包地址?以bitget 钱包为例

石头财经

基于TOGAF和WAF的企业级架构

俞凡

架构

体育直播观看平台开发成品源码”解决方案,提升用户的使用消费体验

软件开发-梦幻运营部

Java近期新闻:LibericaJDK支持RISC-V、Payara Platform、Gradle 8.6、LangChainj 0.26、Spring Cloud_编程语言_Michael Redlich_InfoQ精选文章