欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

junit 出现异常: java.lang.NoClassDefFoundError: org/junit/runner/Describable,junitdescribable,在使用junit测试异常

来源: javaer 分享于  点击 10643 次 点评:29

junit 出现异常: java.lang.NoClassDefFoundError: org/junit/runner/Describable,junitdescribable,在使用junit测试异常


在使用junit测试异常时出现异常, 测试代码如下:

    @Test(expected = IllegalArgumentException.class)    public void testGetTemplate() {     ... test code    }

异常信息如下:

Exception in thread "main" java.lang.NoClassDefFoundError: org/junit/runner/Describable    at java.lang.ClassLoader.defineClass1(Native Method)    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)    at java.lang.ClassLoader.defineClass1(Native Method)    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)    at java.security.AccessController.doPrivileged(Native Method)    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)    at org.junit.internal.requests.ClassRequest.getRunnerClass(ClassRequest.java:41)    at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:23)    at org.junit.internal.requests.FilterRequest.getRunner(FilterRequest.java:23)    at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:41)Disconnected from the target VM, address: '127.0.0.1:50659', transport: 'socket'    at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:212)    at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:68)Caused by: java.lang.ClassNotFoundException: org.junit.runner.Describable

这个问题的解决方法是,将junit 的jar包放到项目的classpath中,操作步骤如下:

打开文件菜单,找到Project structure然后选中project settings下面的Libraries, 在右边添加junit的jar包,如下图所示:

junit class not found

然后重新执行测试就可以正常了。

相关栏目:

用户点评