JDK 24
JDK 24 的早期访问构建版本的Build 29发布,该版本是对 Build 28 的更新,其中包括对各种问题的修复。关于这个版本的更多细节可以在发布说明中找到。
JDK 25
JDK 25 的早期访问构建版本的Build 3发布,该版本是对 Build 2 的更新,其中包括对各种问题的修复。关于这个版本的更多细节可以在发布说明中找到。
对于JDK 24和JDK 25,鼓励开发人员通过Java缺陷数据库报告缺陷。
GlassFish
GlassFish 8.0.0 的第九个里程碑版本包含了除 Jakarta Data 以外的所有 Jakarta EE 11-M4 规范。其他值得注意的变更包括:改进了EntityManagerFactoryWrapper
类,删除了未使用的_logger
字段并添加了serialVersionUID
;删除了web.xml
文件中的jakarta.faces.PARTIAL_STATE_SAVING
属性,该属性在Jakarta Faces 4.1中已被弃用。该版本还支持使用 CDI 进行 Jakarta Persistence 注入,并与 GlassFish 7 进行了同步。关于该版本的更多详细信息,请参阅发布说明。
Spring Framework
最近,Spring 社区比较忙碌,各个团队先后发布了Spring Boot、Spring Security、Spring Authorization Server、Spring Session、Spring Integration、Spring Modulith、Spring Batch、Spring AMQP、Spring for Apache Kafka、Spring for Apache Pulsar和Spring Shell的新版本。更多详情,请参阅 InfoQ 的新闻报道。
Payara
Payara发布了Payara Platform的 2024 年 12 月版本,包括社区版 6.2024.12、企业版 6.21.0 和企业版 5.70.0。这三个版本都解决了一些值得注意的问题,比如,在反序列化 Jakarta Validation ConstraintViolation
接口的实例时会出现ClassCastException
异常;WebappClassLoader
类会出现NullPointerException
异常。社区版现在通过 Eclipse Krazo 3.0.1支持了Jakarta MVC 2.1规范,这是该规范的实现之一。有关这些版本的更多详细信息,请参见社区版6.2024.12、企业版6.21.0和企业版5.70.0的发布说明。
本次发布还包含了 Payara 社区版 7.2024.1 的第三个 alpha 版本,该版本支持即将发布的 Jakarta EE 11,并实现了Jakarta Security规范。
Open Liberty
IBM发布了Open Liberty 25.0.0.1-beta 版本,该版本具有更强的密码加密功能,支持AES-256密码加密;并更新了 Open Liberty 的功能,包括Batch API (batch-1.0
)、Jakarta Batch 2.0(batch-2.0
)、Jakarta Batch 2.1(batch-2.1
)、Java Connector Architecture Security Inflow 1.0(jcaInboundSecurity-1.0
)、Jakarta Connectors Inbound Security 2.0(connectorsInboundSecurity-2.0
),以支持InstantOn。
Apache 软件基金会
Apache TomEE 10.0.0发布,提供了缺陷修复、依赖关系升级和新特性,比如,Jakarta Security @OpenIdAuthenticationMechanismDefinition
注解的实现;在TomEEMicroProfileListener
类中添加了Jandex索引缓存。关于此版本的更多详情,请参阅发布说明。
Apache Struts 7.0发布,提供了缺陷修复、依赖关系升级和新功能,比如,将 JDK 17 作为最小版本;支持 Jakarta EE 9+,即从javax
命名空间迁移到jakarta
命名空间;实现更强的默认安全设置。关于该版本的更多详情,请参阅发布说明。InfoQ 将跟进更详细的新闻报道。
Apache Tomcat团队披露了两个影响 Tomcat 11.0.0-M1 至 11.0.1、10.1.0-M1 至 10.1.33 以及 9.0.0.M1 至 9.0.97 版本的公共漏洞和暴露(Common Vulnerability and Exposure,CVE)(分别参见此处和此处):
CVE-2024-50379,Time-of-Check-Time-of-Use漏洞,在该漏洞中,对于大小写不敏感的文件系统,启用写入功能的默认 servlet 可以绕过 Tomcat 的大小写敏感检查,并导致上传的文件被视为 JSP,从而导致远程代码执行。
CVE-2024-54677漏洞,在该漏洞中,web 应用程序示例未对上传的数据设置限制,从而引发
OutOfMemoryError
,导致拒绝服务。
建议开发人员升级到 Tomcat 11.0.2+、10.1.34+和 9.0.98+版本。
Infinispan
Infinispan 15.1.0(代号为It Was All A Dream)发布,该版本提供了如下特性:新的 Java Hot Rod 客户端,取代当前的hotrod-client
模块;支持基于地理条件进行地理化查询;嵌套实体连接,允许根实体和嵌入实体之间的嵌套关系,即非扁平化关系,以便连接它们的值进行查询。关于该版本的更多详细信息,请参阅发布说明。
JBang
JBang 0.122.0 发布,其特性包括:为不需要集成的 JBang 项目添加了--no-integrations
标志和相应的//NOINTEGRATIONS
指令;在构建文件和ProjectBuilder
类中的javac
命令中默认添加-parameters
标志。关于该版本的更多详细信息,请参阅发布说明。
Commonhaus 基金会
Commonhaus基金会是一个致力于开源库和框架可持续发展的非营利性组织,该基金会宣布了SlateDB和Debezium加入该基金会。红帽首席软件工程师Chris Cranford在 2024 年 11 月初发表的一篇博客文章中介绍了这两个项目加入基金会的情况:
Commonhaus 因创新性的治理框架和对项目独立性的承诺而脱颖而出。这将使 Debezium 社区及其合作者从中受益,因为我们可以继续保持与现在相同的发布节奏和对卓越的承诺。我们很高兴能加入 Commonhaus 的其他著名项目,包括Hibernate、Jackson 和Quarkus。
加入该基金会的其他知名项目包括JReleaser、JBang、OpenRewrite、SDKMAN、EasyMock、Objenesis和Feign。
Gradle
Gradle 8.12.0发布,其特性包括:增强Problems API,通过汇总问题报告中的重复条目,提高了错误和警告报告的可读性,在使用 API 引发构建失败时增强了控制台输出;对平台的增强,包括支持在 Alpine Linux 发行版上监视文件系统,以及支持构建和测试 Swift 6 应用程序。关于此版本的更多详细信息,请参阅发布说明。
原文链接:
Java News Roundup: TomEE 10, Struts 7, Payara Platform, GlassFish, Commonhaus Foundation, Gradle
评论