【问题标题】:Load fxml file located in "src" maven folder加载位于“src”maven文件夹中的fxml文件
【发布时间】:2015-12-05 04:08:34
【问题描述】:

我正在开发一个 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 文件?

【问题讨论】:

    标签: java maven javafx


    【解决方案1】:

    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"));
    

    【讨论】:

    • 我没有为 maven 包含此配置,并且我的 fxml 未包含在 jar 文件中。谢谢。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-10
    • 1970-01-01
    • 2016-05-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多