我正在一个大型项目上编写单元测试,需要将JVM参数传递给这些项目,这些是我在该项目的Eclipse运行配置中内置的JVM参数:
--module-path lib/javafx-sdk-13.0.2/lib --add-modules=javafx.controls
-javaagent:lib/aspectjweaver-1.9.5.jar
-javaagent:lib/spring-instrument-5.2.3.RELEASE.jar
我的问题是,我需要为每个JUnit测试或测试序列添加这些参数。有更好的方法吗?一种不必在我创建的每个新测试中手动添加这些参数的方法?
****** EDIT ******
这也有一个讨厌的副作用,就是根本不让我建立这个项目! Maven不会使用我的自定义JUnit运行配置为应用程序运行整套测试(这很好,因为我在其中设置了JVM参数),但是它自己的测试显然失败了,因为参数不存在。这是一个很大的问题,有没有办法将这些JVM参数直接以某种方式“硬编码”到POM中?
******编辑2 ******
这是我的POM.xml文件中的Spring-Boot-Maven-Plugin配置:
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
<configuration>
<jvmArguments>
--module-path lib/javafx-sdk-13.0.2/lib
--add-modules=javafx.controls
-javaagent:lib/aspectjweaver-1.9.5.jar
-javaagent:lib/spring-instrument-5.2.3.RELEASE.jar
</jvmArguments>
</configuration>
</plugin>
谢谢!
您可以在surefire插件中设置jvm args。使用mvn test运行测试。有点像