我仍在进行一个多模块maven项目,该项目已从openJDK 15升级到openJDK 19。我正在用macOS 13 Ventura制作MBP。
在升级之前,单元测试通过了maven-surefire插件,没有任何问题。
升级到openJDK 19后,mvn clean test
命令失败,并显示以下错误消息。
[INFO] --- maven-surefire-plugin:3.0.0-M5:test (default-test) @ core ---
[INFO]
[INFO] -------------------------------------------------------
[INFO] T E S T S
[INFO] -------------------------------------------------------
[ERROR] Error occurred during initialization of boot layer
[ERROR] java.lang.module.FindException: Module javafx.graphics not found, required by common
我下载了这些文件(openJDK 19和JavaFX 19(,将它们解压缩到所需的位置,添加了一个指向运行时lib目录的环境变量。
我可以毫无问题地从IntelliJ运行程序。
我的问题是,我在运行测试的配置中遗漏了什么?
@Slavomir Jaranowski的建议解决了我的问题。
更改后的pom看起来像
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>3.0.0-M7</version>
<configuration>
<!--<skipTests>${skipUnitTests}</skipTests>-->
<testFailureIgnore>false</testFailureIgnore>
<forkCount>1.5C</forkCount>
<reuseForks>true</reuseForks>
<parallel>methods</parallel>
<threadCount>4</threadCount>
<useUnlimitedThreads>true</useUnlimitedThreads>
<perCoreThreadCount>true</perCoreThreadCount>
<reportFormat>plain</reportFormat>
<trimStackTrace>false</trimStackTrace>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
</configuration>
</plugin>
配置尚未完成。