JavaFX 為 Java 繼 Awt, Swing 之後推出的第 3 代圖形介面 (GUI) 套件,多了場景建立器 (Scene Builder),排版配置檔 CSS 等支援能力。 利用 NetBeans 整合開發環境 (IDE) 撰寫 JavaFX 應用時,常遇到開發環境如何建立的問題。很容易會遇到如下錯誤:
Error occurred during initialization of boot layer
java.lang.module.FindException: Module javafx.controls not found
或
java.lang.module.FindException: Module javafx.fxml not found
以下整理幾點 NetBeans 整合 JavaFX SDK,SceneBuilder 場景建立器,詳查 Build 腳本的方法,供除錯參考。
✅ NetBeans 整合 JavaFX SDK 方法 Project Properties Libraries/ Java Platform: JDK xx (Default) Compile/Compile-time Libraries: Classpath: JavaFX yy Run/Run-time Libraries: Modulepath: JavaFX yy Run/ Configuration: <default config> VM Options: --add-modules javafx.controls,javafx.fxml,javafx.media ✅ NetBeans 整合 SceneBuilder 方法 Tools/Options/Java/JavaFX JavaFX Scene Builder Integration Scene Builder Home: C:\Users\zz\AppData\Local\SceneBuilder ✅ NetBeans除錯想看Build執行腳本內容 Tools/Options/Java/Ant: Ant Home: ... [v] Always Show Output Verbosity Level: Quiet/Normal/[Verbose]/Debug 即可觀看Ant Target (build.xml) Output 註1: 建立 JavaFX 開發環境所須安裝套件如下 1.OpenJDK https://learn.microsoft.com/zh-tw/java/openjdk/download microsoft-jdk-21.0.5-windows-x64.msi (不含JavaFX) microsoft-jdk-21.0.5-macos-aarch64.pkg https://www.azul.com/downloads/?package=jdk-fx#zulu zulu21.38.21-ca-fx-jdk21.0.5-win_x64.msi (含JavaFX) 2.NetBeans https://netbeans.apache.org/download/index.html Apache-NetBeans-22-bin-windows-x64.exe Apache-NetBeans-22.pkg 3.SceneBuilder https://gluonhq.com/products/scene-builder/ SceneBuilder-23.0.1.msi SceneBuilder-23.0.1-aarch64.dmg 4.JavaFX SDK https://gluonhq.com/products/javafx/ openjfx-17.0.13_windows-x64_bin-sdk.zip openjfx-17.0.13_osx-aarch64_bin-sdk.zip 註2: NetBeans 要看到 Scene Builder Home,須要安裝且啟動(Activate)如下任一插件 Tools/Plugins: JavaFX 2 或 JavaFX Implementation for Windows 安裝之後,針對專案 .fxml 按右鍵,才會看到如下選項 Open 連動開啟場景建立器畫面 Edit 開啟.fxml文字畫面 Make Controller 產生 .fxml 中 fx:controller 屬性指定的控制器.java類別檔 註3: NetBeans 要能看到 JavaFX yy 類別庫,須設定 Tools/Libraries/Libraries: Library Name: JavaFX yy Classpath/Add JAR/Folder...: ...\javafx-sdk-yy\lib\javafx-swt.jar ...\javafx-sdk-yy\lib\javafx.base.jar ...\javafx-sdk-yy\lib\javafx.controls.jar ...\javafx-sdk-yy\lib\javafx.fxml.jar ...\javafx-sdk-yy\lib\javafx.graphics.jar ...\javafx-sdk-yy\lib\javafx.media.jar ...\javafx-sdk-yy\lib\javafx.swing.jar ...\javafx-sdk-yy\lib\javafx.web.jar 註4: NetBeans 要能點選原始碼類別,按右鍵點選 Show Javadoc (Alt-F1) 看到類別 註解說明,須設定 Tools/Libraries/Libraries: Library Name: JavaFX yy Javadoc/Add URL...: https://docs.oracle.com/javafx/2/api/ 註5: NetBeans 要能點選原始碼類別,按右鍵點選 Navigate> Go to Source (Ctrl-Shift-B) 看到類別 原始碼,須設定 Tools/Libraries/Libraries: Library Name: JavaFX yy Sources/Add JAR/Folder...: ...\javafx-sdk-yy\src.zip
沒有留言:
張貼留言