找不到NetBeans 10 JUnit Jar

时间:2019-01-12 16:44:35

标签: java netbeans netbeans-10

我重新安装了NetBeans10。尝试运行刚创建的一些初始单元测试时,出现以下错误:

  

<classpath>的{​​{1}}或<modulepath>必须包含junit.jar(如果不在Ant自己的类路径中)

我可能会破解构建脚本以包含<junit>,但我想知道:什么是解决此问题的正确方法?

NetBeans是否应该附带已经可以访问的JUnit版本?我应该以其他方式配置项目吗?如何添加到库的路径?

如何找到Ant的类路径(以及使用的是哪个版本/二进制NetBeans)?

项目junit.jar显示存在JUnit 5.3.1,我在那里列出了三个Jar文件:junit-jipiter-api,junit-jupiter-params,junit-jupiter-engine。但这似乎并没有被发现。

该项目是标准Java库(无主类)。我没有添加任何“额外”或与NetBeans使用的默认项目设置混淆。刚刚使用了基本的安装向导。


重新。来自Geertjan Wielenga的NetBeans邮件列表的回复,他指出了这个话题并回复:

  

是的...

     

我们从未在NB 10中实现对基于Ant的项目的JUnit 5支持。

     

约翰·麦克唐纳

http://mail-archives.apache.org/mod_mbox/netbeans-users/201901.mbox/%3cCAAuDyk6WcgLaUDz0dp=4Arr7QGnwWcYey3VOeGojRRMRqVZrFA@mail.gmail.com%3e

所以我认为这是行不通的。我将在下面尝试将建议的版本还原为JUnit 4。

3 个答案:

答案 0 :(得分:8)

我也正在xubuntu中运行netbeans 10,如果有帮助的话。我不知道发生了什么,所以我不得不恢复到junit4。 编辑:完全清楚,ant需要junit.jar,这在默认的netbeans 10安装中找不到。 在有人提出更好的解决方案之前,请还原为junit4:

1)在测试库中,右键单击并导入junit 4.1.2。

2)删除junit 5.3。

3)将所有导入都废弃在测试文件中,并使用junit4导入。即您的导入将如下所示:

<a class="logo-container" href="/">
<img src="x.png" alt="x" class="top_logo">
</a>

4)废弃beforeAll和其他测试标签。只留下@Test一个。

5)保存所有,关闭并重新打开项目。它将抱怨junit4的hamcrest库未导入。允许netbeans为您修复它。

完成此操作后,我能够测试成功和失败的测试。我猜想当您使用模板生成器生成junit测试时,它将生成junit5测试,因此有点烦人。但是您会进行测试!

答案 1 :(得分:0)

我遇到了同样的错误,但这不是配置问题,只是一个错字。

我正在测试的类的主要方法是这样写的:

public static void main(String agrs) {
 ///
}

我唯一要做的就是正确地编写它,就像这样:

public static void main(String[] args) {
 ///
}

一旦我更改它,问题就消失了。 我想这不是一个全局解决方案,但可能会有所帮助。

答案 2 :(得分:0)

对于已接受的答案,我发现一个更好的解决方案是从 Create/Update 测试中选择 JUnit 4。这样您就不必每次都重新配置测试。

来自 Netbeans:https://netbeans.apache.org//kb/docs/java/junit-intro.html#_writing_junit_3_unit_tests