Eclipse Java IDE JUnit5:junit.jupiter.api.Assertions不可访问。

8

我对编程一窍不通,但这是我的问题:

过去我在Eclipse中通过右键单击项目,然后添加“新建>JUnit测试用例”来添加我的JUnit测试用例。

目前,我无法实现任何测试方法,因为Eclipse会在该行告诉我:

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

错误信息
The type org.junit.jupiter.api.Assertions is not accessible.

我在IDE中遇到的错误:

enter image description here

我尝试了以下操作:

  1. 重新安装Eclipse,使用新工作区。
  2. 将JUnit添加到构建路径中。

没有帮助。

在旧项目中它可以正常工作。

这是Package Explorer的外观:

enter image description here

我错过了什么?


Java的版本是什么? - Kris
构建路径中的JUnit库必须是JUnit5。从您软件包资源管理器的部分查看中,我认为您已经添加了JUnit 4或3。 - Kris
1
你有一个 module-info.java 文件。确保你有相应的 requires 语句或考虑删除 module-info.java 文件。顺便说一下,你正在使用过时的 Eclipse 版本。 - howlger
1
哦,哇,非常感谢你。 - jmuffin
请勿发布代码、错误信息或其他文本数据的图像。 - tripleee
显示剩余2条评论
2个回答

17
您可以通过在默认包中拥有一个 module-info.java 文件(可能没有必需的 requires <module>; 声明)来使用 Java Platform Module System (JPMS)。JPMS 在 Java 9 中引入。
请执行以下操作之一:
  • 删除 module-info.java 文件(如果需要,可以通过右键单击项目文件夹并选择 Configure > Create module-info.java 来重新创建它)
  • module-info.java 中添加相应的 requires 语句,例如通过转到带有 import 语句的行并使用相应的 Quick FixCtrl+1

0
我在一台电脑上的Eclipse IDE也遇到了这个问题,但在另一台新安装的IDE上却没有发生。这让我感到可疑。我尝试导出/导入所有设置,重新导入所有项目,甚至删除它们的IDE配置文件,但都没有帮助。
然后我比较了两台电脑上安装的Eclipse IDE插件,发现了一些差异,所以我卸载了所有与M2E有关的内容,然后重新安装了基本的M2E(重启后)。
问题解决了。
请注意,JPMS中没有“测试模块信息”支持,因此每个工具都有自己的解决方案。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接