Maven surefire和模块化JavaFX 11

时间:2018-11-20 23:58:37

标签: java maven javafx maven-surefire-plugin javafx-11

我在IDE中或以打包的jar形式运行我的项目没有问题,但是以某种方式在使用surefire时总是会遇到此异常

java.lang.IllegalStateException: Location is not set.
javafx.fxml/javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2459)
javafx.fxml/javafx.fxml.FXMLLoader.load(FXMLLoader.java:2435)

该项目遵循Maven的目录结构。我用来加载FXML的代码是

Main.class.getClassLoader().getResource("fxml/App.fxml")

有人知道这可能是什么问题吗?我曾尝试谷歌搜索类似的问题,但没有发现。我也没有运气找到任何类似于我的工作示例项目。

编辑1:这是插件声明

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-surefire-plugin</artifactId>
    <version>3.0.0-M1</version>
    <configuration>
        <forkCount>1</forkCount>
        <reuseForks>true</reuseForks>
        <threadCount>1</threadCount>
        <printSummary>true</printSummary>
        <skipTests>false</skipTests>

        <systemPropertyVariables>
            <glass.platform>Monocle</glass.platform>
            <monocle.platform>Headless</monocle.platform>
            <prism.order>d3d</prism.order>
        </systemPropertyVariables>

        <argLine>
            --add-exports javafx.graphics/com.sun.javafx.application=ALL-UNNAMED
            --add-exports javafx.graphics/com.sun.glass.ui=ALL-UNNAMED
        </argLine>
    </configuration>
</plugin>

0 个答案:

没有答案