加载位于" src"中的fxml文件maven文件夹

时间:2015-09-09 09:02:43

标签: java maven javafx

我正在开发一个JavaFX 8(maven)项目。我想将fxml文件存储在源(不在资源内)文件夹中 当我将我的fxml存储到位置/src/main/resources/views/b/MyFxml.fxml时我使用命令加载它没有错误,

new FXMLLoader(getClass().getResource("/views/b/MyFxml.fxml"));

有没有办法从/src/main/java/package/name/RoleView.fxml位置加载我的fxml文件?

1 个答案:

答案 0 :(得分:7)

Java没有区分资源和来源。只要您的fxml文件在类路径中可见(适当地打包到* .jar),您就可以以相同的方式访问它。鉴于您使用maven,这是您需要的配置:

<project>
  ...
  <build>
    ...
    <resources>
      <resource>
        <directory>src/main/java</directory>
        <includes>
          <include>**/*.fxml</include>
        </includes>
      </resource>
      ...
    </resources>
    ...
  </build>
  ...
</project>

然后,此行应该可以加载您的文件:

new FXMLLoader(getClass().getResource("/package/name/RoleView.fxml"));