
Java News Roundup: JEP 539, Cập nhật GlassFish, GraalVM 25.1 và nhiều công cụ quan trọng khác
Tuần này trong thế giới Java: JEP 539 (Strict Field Initialization) tiến lên trạng thái Candidate, GraalVM 25.1 tối ưu hóa native image, GlassFish vá lỗ hổng RCE nghiêm trọng, cùng các cập nhật từ Micronaut, JReleaser, Grails và Java Operator SDK.
Tổng quan Java News Roundup (29/06/2026)
Chào mừng các bạn đến với bản tin công nghệ tuần này trên hi_dev. Tuần qua, cộng đồng Java chứng kiến nhiều bước tiến quan trọng trong việc cải thiện hiệu năng máy ảo (JVM), bảo mật hệ thống và các công cụ hỗ trợ phát triển. Dưới đây là phân tích chi tiết các thay đổi đáng chú ý.

1. OpenJDK: JEP 539 - Strict Field Initialization
JEP 539 đã chính thức chuyển từ trạng thái Draft (8350458) sang Candidate. Đây là một thay đổi quan trọng trong JVM:
- Mục tiêu: Giới thiệu các trường (fields) được khởi tạo nghiêm ngặt. Các trường này bắt buộc phải được khởi tạo trước khi đọc.
- Lợi ích: Loại bỏ hoàn toàn việc quan sát các giá trị mặc định không mong muốn (như
0hoặcnull), giúp tăng tính an toàn cho mã nguồn và giảm thiểu lỗi logic trong quá trình khởi tạo đối tượng. - Đối tượng áp dụng: Tính năng này hướng đến các trình biên dịch (compilers) phát ra class files, cho phép kiểm soát chặt chẽ hơn vòng đời của biến.
2. Cập nhật JDK Early-Access
Các phiên bản thử nghiệm (Early-Access) tiếp tục nhận được các bản vá lỗi:
- JDK 27 (Build 29): Cải thiện tính ổn định so với Build 28.
- JDK 28 (Build 5): Tập trung vào việc sửa các lỗi tồn đọng từ Build 4.
3. GlassFish: Vá lỗi bảo mật nghiêm trọng
Phiên bản GlassFish 7.1.1 được phát hành với các cải tiến hiệu năng và đặc biệt là vá 4 lỗ hổng CVE, trong đó có 2 lỗ hổng RCE (Remote Code Execution) nguy hiểm:
- CVE-2026-2586: Cho phép kẻ tấn công có quyền truy cập vào Administration Console gửi các yêu cầu độc hại để thực thi lệnh hệ điều hành với đặc quyền của người dùng dịch vụ ứng dụng.
- CVE-2026-2587: Lỗ hổng trong cơ chế render template phía máy chủ, cho phép kẻ tấn công chiếm quyền kiểm soát máy chủ, đọc/ghi dữ liệu và duy trì sự hiện diện (persistence).
- Cải tiến kỹ thuật: Tối ưu hóa phương thức
isValidAnnotation()trongWeldUtils(fail-fast) và cache phương thứcisInterceptor()để giảm tải quá trình duyệt cây annotation trên đường dẫn CDI.
4. GraalVM 25.1: Tối ưu hóa Native Image
GraalVM tiếp tục khẳng định vị thế trong lĩnh vực biên dịch native:
- Kích thước: Giảm 3% dung lượng của các native image được tạo ra.
- G1 GC: Hỗ trợ Garbage Collector G1 trên macOS AArch64 (dành riêng cho Oracle GraalVM).
- Metadata: Kho lưu trữ GraalVM Reachability Metadata hiện đã có 1500 thư viện, hỗ trợ đắc lực cho Native Build Tools.
5. Hệ sinh thái Framework & Công cụ
- Micronaut 5.0.3: Cập nhật các module quan trọng bao gồm AWS, Data, SQL, R2DBC, Problem JSON, Test và Micrometer.
- Open Liberty 26.0.0.7 (Beta): Hỗ trợ Jakarta Data 1.1-M3 (stateful repositories, annotation
@First,@Find,@Delete). Cho phép vô hiệu hóa endpoint/healthcủa MicroProfile Health 4.0. - JReleaser 1.25.0: Hỗ trợ tạo đa định dạng lưu trữ (ZIP và TAR) cùng lúc qua
jlinkvànative-image. Cải thiện bảo mật khi hiển thị secrets (chỉ hiện ký tự đầu và cuối). - Grails 8.0.0 (Milestone 2): Cải thiện xử lý virtual thread và cô lập trạng thái framework trong
ThreadLocal. - RefactorFirst (v0.0.0): Công cụ mới từ Jim Bethancourt giúp ưu tiên các phần cần refactor trong ứng dụng. Hỗ trợ phát hiện "disharmony" (bất hòa) trong code dựa trên các chỉ số hướng đối tượng và chuyển đổi sang Vizdom để trực quan hóa dữ liệu.
- Java Operator SDK 5.4.0: Hỗ trợ
shard selectorđể chạy nhiều bản sao (replicas), thêm tham sốdefaultFiltersđể kiểm soát sự kiện, và bổ sung các phương thứcgetSecondaryResource()vào interfaceContext.
Theo dõi hi_dev để cập nhật những tin tức công nghệ mới nhất hàng tuần!
Do you like this post?
Upvote to push this post higher on the community feed
