Maven包org.junit.jupiter.API不存在

mrwjdhj3  于 2023-10-17  发布在  Maven
关注(0)|答案(1)|浏览(186)

我正在做一个需要使用JUnit进行测试的Java项目。我已经将必要的JUnit依赖项添加到pom.xml文件中,如下所示:

<dependencies>
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-api</artifactId>
        <version>5.7.0</version>
    </dependency>
</dependencies>

在添加依赖项之后,我刷新了Maven项目以确保它被识别。
在我的测试文件中,我使用以下导入导入JUnit:

import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.*;

代码编辑器不会显示任何导入错误,这表明JUnit正在被识别。但是,当我尝试运行任何测试时,我遇到以下错误消息:

java: package org.junit.jupiter.api does not exist

可能是项目设置或配置有问题导致了此错误。我将感谢任何关于如何解决这个问题的指导。

wfveoks0

wfveoks01#

您需要将JUnit实现添加到项目中,而不仅仅是API!
请参阅用户指南以设置您的maven构建。
你的依赖还缺少测试范围:你应该将<scope>test</scope>添加到你的maven依赖项中。否则,你将把你的maven依赖打包到你的应用程序中,而这是不需要的(测试通常不在运行时使用)。
总的来说,您的依赖项应该与Maven Repository站点(如this)上显示的类似。

<dependency>
    <groupId>org.junit.jupiter</groupId>
    <artifactId>junit-jupiter</artifactId>
    <version>5.10.0</version> <!-- can be omitted when using the BOM -->
    <scope>test</scope>
</dependency>

如果您使用JUnit的Maven BOM,您可以跳过那里的版本-详细信息在上面链接的用户指南中描述。

相关问题