存取 Maven JavaFX 專案中的 FXML 檔案
在 JavaFX 應用程式中,從控制器引用 FXML 檔案至關重要。使用 Maven 建置專案時,考慮 FXML 檔案在資源資料夾中的位置非常重要。
Java 中的資源查找
在深入研究特定解決方案之前值得注意的是,FXML 檔案查找是 Java 中的一種通用資源查找任務。 FXMLLoader 將資源位置作為輸入,因此查找本身會在您的呼叫應用程式程式碼中進行。
FXML 位置解析選項
有多種方法可以建立您的FXML 檔案並解析其位置:
放置FXML src/main/resources 目錄中的檔案:
loader.setLocation(getClass().getResource("/main.fxml"));
將FXML 檔案放在src/main/resources/fxml 中目錄:
loader.setLocation(getClass().getResource("/fxml/main.fxml"));
將FXML 檔案放入對應的資源目錄:
loader.setLocation(getClass().getResource("main.fxml"));
這類假設執行FXML 載入位於對應的Java 來源
FXMLLoader 使用建議
為了獲得最佳結果,建議:
透過new 實例化FXMLLoader FXMLLoader() 而不是靜態方法。
ComboBoxStyling.class .getResource("/css/styleclass.css");
在實例化的 FXMLLoader 上設定位置並使用 load()。
使用 getClass().getResource() 基於類別派生位置。 IDE 和建置設定確保您的 IDE 或建置工具將 FXML 檔案從資源資料夾複製到建置輸出目錄。 Java Jigsaw 模組化應用程式對於使用Java Jigsaw 建立的模組化應用程序,使用該類別來取得資源直接取代類別載入器: 透過遵循這些準則,您可以在JavaFX 中有效地引用FXML 檔案Maven 專案控制器。以上是如何在基於 Maven 的 JavaFX 專案中存取 FXML 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!