Tin tức Java tuần: Cập nhật JDK 27, Spring AI 2.0, GlassFish 9.0 và Gradle 9.5
Bản tin tuần này của cộng đồng Java cập nhật các JEP mới cho OpenJDK JDK 27, cùng với các bản phát hành quan trọng như Spring AI 2.0 M5 và GlassFish 9.0 M2. Ngoài ra, hàng loạt công cụ và framework như Quarkus, Gradle, LangChain4j và Google ADK cũng nhận được các bản cập nhật cải thiện tính năng và hiệu suất.

Bản tin tuần này của hệ sinh thái Java tập trung vào các diễn biến mới nhất của OpenJDK với các đề xuất JEP dành cho JDK 27. Bên cạnh đó, các bản phát hành dấu mốc (milestone) của Spring AI 2.0 và GlassFish 9.0 cũng là những điểm nhấn đáng chú ý.
Ngoài ra, cộng đồng lập trình viên còn chào đón các bản cập nhật mới cho Quarkus, JReleaser, Gradle, LangChain4j cùng các công cụ hỗ trợ AI Agent như Google ADK và A2A Java SDK.
OpenJDK và JDK 27
Các đề xuất nâng cấp JDK (JEP) tiếp tục được thảo luận và hoàn thiện cho phiên bản JDK 27 sắp tới:
- JEP 532: Primitive Types in Patterns, instanceof, and switch (Bản xem trước thứ 5): Đề xuất này đã được nâng lên trạng thái Targeted. Tính năng này cải tiến khớp mẫu (pattern matching) bằng cách cho phép sử dụng các kiểu nguyên thủy trong mọi ngữ cảnh mẫu, cũng như mở rộng các cấu trúc
instanceofvàswitchđể làm việc với tất cả các kiểu nguyên thủy. - JEP 533: Structured Concurrency (Bản xem trước thứ 7): Đã chuyển sang trạng thái Target. Đề xuất này đơn giản hóa lập trình đồng thời bằng cách đưa ra khái niệm "đồng thời có cấu trúc", giúp xử lý nhóm các tác vụ liên quan chạy trên các luồng khác nhau như một đơn vị công việc duy nhất. Điều này giúp tối ưu hóa xử lý lỗi, hủy bỏ tác vụ và tăng cường khả năng quan sát.
- JEP 531: Lazy Constants (Bản xem trước thứ 3): Trước đây gọi là StableValues, JEP này cung cấp cơ chế khởi tạo hằng số một cách lười biếng (lazy). Các thay đổi bao gồm loại bỏ các phương thức
isInitialized()vàorElse(), đồng thời thêm phương thức nhà máyofLazy()mới. - JEP 536: JFR In-Process Data Redaction: Đề xuất nâng cấp JDK Flight Recorder (JFR) để che các thông tin nhạy cảm—như tham số dòng lệnh, giá trị biến môi trường—trước khi quá trình ghi âm hoàn tất.
Bản dựng early-access Build 20 của JDK 27 cũng đã được phát hành với các bản sửa lỗi từ bản build trước đó.
GlassFish
Eclipse GlassFish 9.0.0 đã ra mắt bản phát hành dấu mốc thứ hai (M2). Bản cập nhật này mang đến các bản sửa lỗi, cải thiện tài liệu và nâng cấp các thư viện phụ thuộc. Điểm nổi bật bao gồm:
- Hỗ trợ phiên bản tối thiểu của JDK 21 với khả năng tương thích lên đến JDK 25.
- Triển khai các thông số kỹ thuật mới như Jakarta Security 5.0-M2, Jakarta Faces 5.0-M2 và Jakarta Contexts and Dependency Injection 5.0-M1.
- Triển khai mới cho thông số kỹ thuật JSON Web Token (JWT) tích hợp với Jakarta Security và Eclipse Soteria.
Spring Framework
Spring AI 2.0.0 đã phát hành bản milestone thứ năm (M5). Các tính năng mới gồm:
- Các triển khai tùy chỉnh cho giao diện
StructuredOutputConverter, cho phép tham gia vào quy trình đầu ra cấu trúc gốc (native structured output pipeline) nhằm tăng tính linh hoạt. - Thêm phương thức
isConversationHistoryEnabled()vào lớpToolCallAdvisor.Builderđể kiểm tra trạng thái kích hoạt của lịch sử hội thoại.
Quarkus và Micronaut
- Quarkus 3.35.0: Phiên bản này giới thiệu tính năng thử nghiệm "tree shaker" ở thời điểm biên dịch (build-time), giúp xác định và loại bỏ các lớp không sử dụng khỏi các phụ thuộc runtime để giảm kích thước file JAR ứng dụng. Ngoài ra, một phần mở rộng Reactive Transactions mới đã được thêm vào để hỗ trợ chú thích
@Transactionalcủa Spring Framework với Hibernate Reactive. - Micronaut Framework 5.0 (Preview): Dự kiến ra mắt trong Quý 2 năm 2026, phiên bản này sẽ sử dụng JDK 25 làm nền tảng, mang lại cải tiến hiệu suất và hỗ trợ các nhà cung cấp đám mây chuyển đổi sang JDK 25. Micronaut 5.0 cũng sẽ hỗ trợ Kotlin 2.3, Groovy 5.0, Jackson 3.0 và loại bỏ hỗ trợ cho RxJava 2.
Các công cụ phát triển và AI
- Gradle 9.5.0: Bản phát hành chung (GA) này cải thiện chẩn đoán và báo cáo lỗi tác vụ, bao gồm thông tin provenance và ghi nhật ký rõ ràng hơn khi JVM của khách không tương thích. Ngoài ra, phương thức
DisallowChanges()đã được thêm vào giao diệnDomainObjectCollection. - LangChain4j 1.14.0: Bản phát hành chính thức cùng với bản beta thứ 24 bổ sung thuộc tính
IMMEDIATE_IF_LASTvào enumReturnBehaviorvà lớpOpenAiOfficialResponsesChatModelmới để tương thích với OpenAI Responses API. - Agent2Agent (A2A) Java SDK 1.0.0 (Beta 1): Thư viện này triển khai giao thức Agent2Agent (A2A) để chạy các ứng dụng tác tử AI (agentic applications). Bản cập nhật hỗ trợ các giao thức truyền tải JSON-RPC, gRPC và HTTP+JSON/REST, cùng với các mã lỗi có cấu trúc chi tiết.
- Google Agent Development Kit (ADK) cho Java 1.2.0: Cập nhật bao gồm các tiêu định telemetry tùy chỉnh cho giao diện Google Cloud BigQuery và thêm lớp
McpSessionManager. - Hardwood 1.0.0 (Beta 2): Trình phân tích cú pháp dành cho định dạng tệp Apache Parquet này giờ đây hỗ trợ kiểu
VARIANTvà cung cấp lệnh phụdiveđể khám phá và phân tích tệp Parquet tương tác qua giao diện văn bản. - JReleaser 1.24.0: Công cụ giúp tạo bản phát hành dự án Java này đã bổ sung hỗ trợ cho Zernio trong danh sách các công cụ thông báo (announcers) và thêm cờ có thể tái tạo (reproducible flag).
"Việc liên tục cập nhật các JEP cho thấy nỗ lực của cộng đồng trong việc làm cho Java trở nên hiện đại hóa, hiệu quả và dễ sử dụng hơn cho các nhà phát triển," chuyên gia nhận định.



