【发布时间】:2021-11-22 15:42:54
【问题描述】:
我正在尝试从 JDK 8 --> JDK 11 迁移,果然 maven surefire-plugin 失败了。所以我知道我需要将它的版本更改为 2.21.0 或更高版本,而且我已经这样做了。该版本仅在一个 pom 中引用,所以一切都应该没问题,甚至 intellIJ 说我使用的是 2.22.2 版本。
问题是当我运行 mvn clean install -U 或 mvn test 或 mvn clean 然后 mvn compile-test 最后一个测试时我仍然收到错误引用:
Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test (default-test) on project modular-index-composer: Execution default-test of goal org.apache.maven.plugins:maven-surefire-plugin:2.20.1:test failed.: NullPointerException
这怎么可能?我 100% 确定该项目的版本必须是 2.22.2。有没有其他方法可以设置?
【问题讨论】:
-
首先surefire和你升级JDK8->JDK11的关系在哪里?此外,如果没有任何 pom 文件,甚至根本无法猜测出什么是错的或可能是错的......为什么不使用最新版本的 maven-surefire-pugin 呢?
-
Surefire 插件在 2.20.1 版本或低于 jdk 11 的版本中中断。如果你搜索它,你会发现很多人都有这个问题。
-
Surefire 本身通常不会,但它可能取决于使用不同版本的单元测试框架(junit 4.X、junit jupiter、testng?)...
标签: java maven testing maven-surefire-plugin