我正在尝试在我的Windows 10盒子上编译这个非常简单的JUnit测试:
import static org.junit.Assert.assertTrue;
import org.junit.Test;
public class TestHelloWorld
{
@Test
public void BasicTest ()
{
assertTrue(true);
}
}
然而,这项看似无害的任务已经证明不会受到三到四个小时的研究和反复试验。
从Cygwin终端我看到了:
javac -cp lib/hamcrest-core-1.3.jar:/lib/junit-4.12.jar:. TestHe
TestHelloWorld.java:1: error: package org.junit does not exist
import static org.junit.Assert.assertTrue;
^
TestHelloWorld.java:1: error: static import only from classes and interfaces
import static org.junit.Assert.assertTrue;
^
TestHelloWorld.java:2: error: package org.junit does not exist
import org.junit.Test;
^
TestHelloWorld.java:6: error: cannot find symbol
@Test
^
symbol: class Test
location: class TestHelloWorld
TestHelloWorld.java:9: error: cannot find symbol
assertTrue(true);
^
symbol: method assertTrue(boolean)
location: class TestHelloWorld
5 errors
从CMD提示我看到:
javac -cp C:\Users\canon\Documents\GitHub\cse1341\AssignmentTester\lib\junit.jar TestHelloWorld.java
error: error reading C:\Users\canon\Documents\GitHub\cse1341\AssignmentTester\lib\junit.jar; error in opening zip file
1 error
老实说,我不知道我在这里做错了什么。我之前一直在使用* nix机器,我不记得在使用-cp标志将junit和hamcrest jar传递到类路径时编译JUnit测试时遇到任何问题。任何想法或指导将非常感谢!
答案 0 :(得分:0)
有两件事:
使用';'的Windows中的Java在classpath参数中分隔jar文件应该如此 " javac -cp lib / hamcrest-core-1.3.jar; /lib/junit-4.12.jar;。 TestHeTestHelloWorld.java"在cygwin
检查C:\ Users \ canon \ Documents \ GitHub \ cse1341 \ AssignmentTester \ lib \ junit.jar是否为有效jar。 (您可以使用zip工具进行检查)。
答案 1 :(得分:0)
lib/junit-4.12.jar
之前的斜线似乎是错误的。