Java Play Junit:java.lang.NoSuchMethodError

时间:2015-02-16 18:38:06

标签: junit playframework-2.3

在控制台中运行我的游戏测试时出现以下错误。

[error] Uncaught exception when running UserTest: java.lang.NoSuchMethodError: org.junit.runner.Request.classes([Ljava/lang/Class;)Lorg/junit/runner/Request;
sbt.ForkMain$ForkError: org.junit.runner.Request.classes([Ljava/lang/Class;)Lorg/junit/runner/Request;
    at com.novocode.junit.JUnitRunner$1.execute(JUnitRunner.java:122)
    at sbt.ForkMain$Run$2.call(ForkMain.java:294)
    at sbt.ForkMain$Run$2.call(ForkMain.java:284)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
[info] Passed: Total 0, Failed 0, Errors 0, Passed 0

即使是空的测试用例也没有运行。

public class UserTest  {
    @Test
    public void addUser() {
        assertEquals(1,1);
    }
}

1 个答案:

答案 0 :(得分:1)

似乎classes方法已添加到Junit 4.6版的Request类中。我尝试将以下内容添加到build.sbt文件中。

libraryDependencies += "junit" % "junit" % "4.8"

但它仍然没有解决这个问题。然后我下载了jar并将其作为非托管资源添加到lib目录中。它似乎做了伎俩,我现在没有得到任何错误。