问题一
maven项目无法导包
原因一
添加完依赖后未进行刷新
解决方案
在idea
中进行刷新maven
的操作,使maven
的配置文件重新加载
原因二
依赖作用域不对
解决方案
修改作用域范围:
<scope>compile</scope>
问题二
java: 错误: 不支持发行版本 5
原因
解决方案
问题三
JUnit5
代码报错并没有具体的 Java
哪行命令 错误或提示 no tests
举例:
警告: TestEngine with ID 'junit-jupiter' failed to discover tests
java.lang.NoSuchMethodError: org.junit.platform.engine.EngineDiscoveryRequest.getDiscoveryListener()Lorg/junit/platform/engine/EngineDiscoveryListener;
at org.junit.platform.engine.support.discovery.EngineDiscoveryRequestResolution.resolveCompletely(EngineDiscoveryRequestResolution.java:89)
......
原因
依赖存在多个版本的JUnit5组件
解决方案
使用物料清单解决:
<dependencyManagement>
<dependencies>
<!--当使用 Gradle 或 Maven 引用多个 JUnit 工件时,此物料清单 POM 可用于简化依赖项管理。不再需要在添加依赖时设置版本-->
<dependency>
<groupId>org.junit</groupId>
<artifactId>junit-bom</artifactId>
<version>${junit.jupiter.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
添加后,对应的依赖删除版本<version>
标签
总结
JUnit5+Maven项目对应常见报错总结:
一般为依赖没有正确作用域,或是多个依赖之间有版本冲突,为了解决JUnit5的版本冲突,建议大家使用物料清单解决,框架版本升级,哪怕添加了多个依赖,也可只改动一个地方即可把所有依赖全部升级。