【问题标题】:How to check if I set CLASSPATH correctly? (Junit error)如何检查我是否正确设置了 CLASSPATH? (Junit 错误)
【发布时间】:2015-01-17 16:54:14
【问题描述】:

我安装了 Junit 并尝试在 YouTube 上观看其中一个教程视频。我正确地将 junit-4.11 添加到我的 CLASSPATH 中,但是当我运行我的 Junit 测试时,我得到了initializationError。 echo %CLASSPATH% 正确显示 junit-4.11.jar。这可能是什么原因造成的?

package test;

public class Junit {

public String concatenate(String one, String two)
{
    return one + two;
}

public int multiply(int number1, int number2)
{
    return number1 * number2;
}
}


package test;
import static org.junit.Assert.*;
import org.junit.Test;
public class MultiplyTest {

@Test
public void testMultiply() {
    Junit test = new Junit();
    int result = test.multiply(3,4);
    assertEquals(12, result);
}
}





java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at org.junit.internal.builders.JUnit4Builder.runnerForClass(JUnit4Builder.java:10)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
at org.junit.internal.builders.AllDefaultPossibilitiesBuilder.runnerForClass(AllDefaultPossibilitiesBuilder.java:26)
at org.junit.runners.model.RunnerBuilder.safeRunnerForClass(RunnerBuilder.java:59)
at org.junit.internal.requests.ClassRequest.getRunner(ClassRequest.java:26)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.<init>(JUnit4TestReference.java:33)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestClassReference.<init>(JUnit4TestClassReference.java:25)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.createTest(JUnit4TestLoader.java:48)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestLoader.loadTests(JUnit4TestLoader.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
Caused by: java.lang.ClassNotFoundException: org.hamcrest.SelfDescribing
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 25 more

【问题讨论】:

标签: java eclipse junit classpath


【解决方案1】:

您还需要将 hamcrest-all.jar 添加到您的类路径中。这个问题在这里得到解答:java.lang.NoClassDefFoundError: org/hamcrest/SelfDescribing

【讨论】:

  • 谢谢!它在junit的下载页面中列出,我不敢相信我错过了..
猜你喜欢
  • 2018-07-29
  • 2020-11-10
  • 1970-01-01
  • 2016-12-05
  • 1970-01-01
  • 1970-01-01
  • 2013-10-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多