尝试使用 @RunWith(SpringRunner.class) 时出现初始化错误

initializationError when try to use @RunWith(SpringRunner.class)

我尝试在 Intellij IDEA 中导入现有项目。所有依赖关系都已解决,项目构建成功。当我尝试执行项目时,我收到以下错误消息:

Could not initialize class org.springframework.test.context.junit4.SpringRunner

下面的代码没有帮助我解决这个问题,我在另一个类似的问题中找到了。

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.10</version>
        <configuration>
            <junitArtifactName>junit:junit:4.12</junitArtifactName>
        </configuration>
    </plugin>

版本号:

Spring 4.3.3

Junit 4.12

如果没有更多详细信息(例如 github 上的示例项目),我们可能很难找到根本原因。

您似乎在 pom.xml 中的某处覆盖了 junit 版本。 如文档中所述 SpringRunner 需要 junit 4.12 或更高版本。

spring 引导项目报告了一个类似的错误: Spring Boot Issue 5695

您可以使用 mvn dependency:tree 等工具找出实际的项目依赖关系。