我在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>