访问 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 使用建议
为了获得最佳结果,建议:
IDE 和构建设置
确保您的 IDE 或构建工具将 FXML 文件从资源文件夹复制到构建输出目录。
Java Jigsaw 模块化应用程序
对于使用 Java Jigsaw 构建的模块化应用程序,使用该类来获取资源直接代替类加载器:
ComboBoxStyling.class .getResource("/css/styleclass.css");
通过遵循这些准则,您可以在 JavaFX 中有效地引用 FXML 文件Maven 项目控制器。
以上是如何在基于 Maven 的 JavaFX 项目中访问 FXML 文件?的详细内容。更多信息请关注PHP中文网其他相关文章!