JavaFX 11 釋出 與 JDK 拆分後的首個正式版
JavaFX 11 釋出了,JavaFX 是一個強大的圖形和多媒體處理工具包集合,它允許開發者來設計、建立、測試、除錯和部署富客戶端程式,並且和 Java 一樣跨平臺。由於 JavaFX 庫被寫成了 Java API,因此 JavaFX 應用程式程式碼可以呼叫各種 Java 庫中的 API,例如 JavaFX 應用程式可以使用 Java API 庫來訪問本地系統功能並且連線到基於伺服器中介軟體的應用程式。
JavaFX 可以自定義程式外觀,CSS 將外觀和樣式與業務邏輯實現進行了分離,因此 ofollow,noindex">開發 人員可以專注於編碼工作。值得注意的是,從 JDK 11 開始, JavaFX 模組與 JDK 分開提供 。
JavaFX 11 需要 JDK 10(必須是 OpenJDK 版本)或 JDK 11,建議使用 JDK 11。
此次更新主要內容如下:
重要更新
-
JavaFX 模組指定:因為 JDK 不再包含 JavaFX,那麼必須明確包含應用程式使用的 JavaFX 模組,詳情見:https://openjfx.io/openjfx-docs/。
-
新增 API 以自定義 Spinner 控制元件的步驟重複計時。在 JavaFX 11 中修改值步驟之前,必須在 Spinner 控制元件箭頭按鈕上按下滑鼠一段預設持續時間,JavaFX 11 中已新增兩個新屬性“initialDelay”和“repeatDelay”來配置此操作。
-
javafx.* 模組現在由應用程式類載入器載入,預設情況下不再具有許可權。想要在啟用安全管理器的情況下執行的應用程式需要使用“-Djava.security.policy”指定自定義策略檔案,併為每個 javafx.* 模組授予所有許可權。
-
預設 GTK 版本從 v2 更新為 v3。將在存在 gtk3 庫的 Linux 平臺上使用 GTK 3。
特性
-
新增:添加了公共 FX Robot API 以支援模擬使用者互動,例如在鍵盤上輸入,使用滑鼠並捕獲圖形資訊。
-
移除:FX Media 移除了對 libavcodec 53 和 55 的支援。
此外公告還提供了關於以下一些常見問題的解決方案:
-
OpenJDK 11 環境下,JavaFX 在 Ubuntu 18.04 上啟用 Wayland 時崩潰。
-
使用 JDK 10 執行時,Swing interop 需要標準的匯出配置。
-
使用具有獨立 SDK 的安全管理器執行時,Swing interop 失效。
-
使用 jlink 建立的小 jdk 映像時,Swing interop 失效。
詳情檢視 更新日誌 。