java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing
While running junit
test in eclipse
I am getting this Exception
:
java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing
I've added junit.jar
library file.
I've tried different versions of junit.jar: 4.4
, 4.8
, etc.
How do I fix this Exception?
Solution 1:
Add hamcrest-all-X.X.jar
to your classpath.
Latest version as of Feb 2015 is 1.3: http://code.google.com/p/hamcrest/downloads/detail?name=hamcrest-all-1.3.jar&can=2&q=
Solution 2:
According to the JUnit GitHub team website (https://github.com/junit-team/junit/wiki/Download-and-Install), junit.jar
and hamcrest-core.jar
are both needed in the classpath when using JUnit 4.11.
Here is the Maven dependency block for including junit and 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>