本週 2026 年 6 月 29 日的 Java 摘要,重點新聞包括:新的 JEP 候選項目「嚴格欄位初始化」;GraalVM、JReleaser、RefactorFirst 與 Java Operator SDK 的點版本更新;GlassFish 與 Micronaut 的維護版本;Grails 8.0 的第二個里程碑版本;以及 Open Liberty 26.0.0.7 的 beta 版本。
OpenJDK
JEP 539,JVM 中的嚴格欄位初始化(預覽),已從 JEP Draft 8350458 提升 至 Candidate 狀態。此 JEP 在 Java 虛擬機器中引入嚴格初始化的欄位,這些欄位必須在被讀取前完成初始化。因此,永遠不會觀察到 0 或 null 等預設值。此功能可供發出類別檔案的編譯器使用。
JDK 27
Build 29 的 JDK 27 早期存取版本 已於上週推出,包含來自 Build 28 的 更新,其中包含對各種 問題 的修正。此版本的進一步細節可參閱 發行說明。
JDK 28
Build 5 的 JDK 28 早期存取版本 也於上週推出,包含來自 Build 4 的 更新,其中包含對各種 問題 的修正。此版本的更多細節可參閱 發行說明。
GlassFish
GlassFish 7.1.1 的發行版本提供了錯誤修正、相依性升級以及改進,例如:簡化 isValidAnnotation() 方法(定義於 WeldUtils 類別中),當沒有有效的型別名稱時會快速失敗;以及 isInterceptor() 方法(定義於 InjectionServicesImpl 類別中)現在已快取,以避免在每次請求的 CDI 注入路徑上遍歷註釋階層的較高成本。
此版本也修復了四個 CVE,其中兩個影響 GlassFish 8.0.1、8.0.0、7.1.0 以及 7.0.0-7.0.25 版本:
- CVE-2026-2586,一個遠端程式碼執行 (RCE) 漏洞,允許具有管理主控台存取權的攻擊者傳送惡意製作的請求,以應用程式服務使用者的權限執行任意作業系統指令。
- CVE-2026-2587,同樣是伺服器端樣板渲染機制中的 RCE 漏洞,允許攻擊者入侵基礎主機,並啟用讀取/修改資料、執行任意指令、持久化以及橫向移動等功能。
此版本的進一步細節可參閱 發行說明。
GraalVM
發行 的 GraalVM 25.1 包含顯著變更,例如:產生的原生映像大小減少 3%;支援在 macOS AArch64 上的原生映像中使用 G1 GC(僅在 Oracle GraalVM 中提供);以及 GraalVM Reachability Metadata Repository 中總共提供 1500 個函式庫,供 Native Build Tools 使用。此版本的更多細節可參閱 發行說明 以及此 YouTube 影片。
Micronaut
Micronaut Foundation 已 發布 Micronaut Framework 5.0.3 版本,基於 Micronaut Core 5.0.4,包含以下模組的修補程式更新:Micronaut AWS;Micronaut Data;Micronaut SQL Libraries;Micronaut R2DBC;以及 Micronaut Problem JSON;Micronaut Test 與 Micronaut Micrometer。此版本的進一步細節可參閱 發行說明。
Open Liberty
beta 版本 的 Open Liberty 26.0.0.7 提供了顯著變更,例如:支援 Jakarta Data 1.1-M3,包含新功能如有狀態儲存庫、新的 @First 註釋,以及能夠在 @Find 與 @Delete 註釋中使用 Restriction 與 Constraint 介面作為參數;以及在使用基於檔案的健康檢查機制時,停用 MicroProfile Health 4.0 的 /health 端點。
JReleaser
發行 的 JReleaser 1.25.0 提供了錯誤修正、文件改進、相依性升級以及新功能,例如:支援使用 jlink 與 native-image 的多種封存格式,可同時產生 ZIP 與 TAR 檔案;以及將秘密遮蔽從全星號改為顯示秘密的第一個與最後一個字元。此版本的更多細節可參閱 發行說明。
Grails
Apache Grails 8.0.0 的第二個里程碑版本 包含錯誤修正、文件改進、相依性升級以及顯著變更,例如:確保 Grails 轉換在傳入不正確的目錄至 GlobalGrailsClassInjectorTransformation 類別時會失敗(透過 grails-core 建置);以及在使用 Java ThreadLocal 類別的執行個體時,改善虛擬執行緒清理與執行緒繫結框架狀態的隔離。此版本的進一步細節可參閱 發行說明。
RefactorFirst
Jim Bethancourt(Improving 的首席軟體顧問)已發布 RefactorFirst 0.0.0 版本,這是一個用於優先排序應用程式中應重構部分的公用程式。此版本提供:改進類別關係移除的計算;新增物件導向不和諧偵測器,參考自「Object-Oriented Metrics in Practice」一書;以及從 D3 移轉至 Vizdom 以改善資料視覺化。此版本的更多細節可參閱 發行說明。
Java Operator SDK
發行 的 Java Operator SDK 5.4.0(適用於 Java 的 Kubernetes operator 框架)提供了顯著變更,例如:支援分片選擇器(一種 Kubernetes 樣式的標籤選擇器,除了正常標籤選擇器外還會套用),以執行多個複本;新增 defaultFilters 參數至 @ControllerConfiguration 註釋,以提供停用預設篩選事件的選項;以及新增 getSecondaryResource() 與 getSecondaryResourcesAsStream() 方法至 Context 介面,以直接依名稱查詢單一次要資源。此版本的進一步細節可參閱 發行說明。
1 Comment
Log in to join the conversation.good post