java.lang.NoClassDefFoundError: org/hamcrest/SelfDescripting

在运行测试时,我得到了这个:juniteclipseException

java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing

我已经添加了库文件。junit.jar

我尝试过不同版本的 junit.jar:、 、 等。4.44.8

如何修复此异常?


答案 1

添加到类路径hamcrest-all-X.X.jar

截至2015年2月的最新版本为1.3:http://code.google.com/p/hamcrest/downloads/detail?name=hamcrest-all-1.3.jar&can=2&q=


答案 2

根据JUnit GitHub团队网站(https://github.com/junit-team/junit/wiki/Download-and-Install),并且在使用JUnit 4.11时都需要在类路径中。junit.jarhamcrest-core.jar

这是 Maven 依赖项块,用于包含 junit 和 hamcrest。

<dependency>
    <groupId>junit</groupId>
    <artifactId>junit</artifactId>
    <version>4.1.2</version>
    <scope>test</scope>
</dependency>
<!-- Needed by junit -->
<dependency>
    <groupId>org.hamcrest</groupId>
    <artifactId>hamcrest-all</artifactId>
    <version>1.3</version>
    <scope>test</scope>
</dependency>

推荐