Mat*_*ale 4 java eclipse ant junit
我有一个Foo.java编译没有错误的文件。但是当我添加单行时
import static org.junit.Assert.assertNotEquals;
Run Code Online (Sandbox Code Playgroud)
这会导致我的蚂蚁生成以下错误:
compileTests:
[javac] Compiling 27 source files to C:\example\bin
[javac] C:\example\src\Foo.java:7: error: cannot find symbol
[javac] import static org.junit.Assert.assertNotEquals;
[javac] ^
[javac] symbol: static assertNotEquals
[javac] location: class
[javac] 1 error
Run Code Online (Sandbox Code Playgroud)
我正在使用JUnit 4.4。junit-4.4.jar包括在classpath该javac任务。
我曾尝试运行不同版本的编译器与标志-Dbuild.compiler=javac1.7和-Dbuild.compiler=javac1.8,但它没有什么区别。我仍然收到完全相同的错误。
assertNotEquals 是从Assert唯一导致此错误的静态导入。
我已经看到过此文章Java静态导入导致编译错误。可能是编译器错误?
而且我尝试Assert自行导入,并在每个assert语句之前加上Assert.建议的这篇文章。我遇到了同样的错误,这次是在方法调用Assert.assertNotEquals()而不是import语句上。
但是,导入成功编译并在Eclipse上运行。
有人对此有任何想法吗?我想深入了解这一点,而不必实施变通办法。
您正在使用Junit 4.4。 AssertNotEquals直到4.11才被添加
如果您更新到最新的JUnit jar。编译器错误应该消失。Eclipse可能正在使用具有最新方法的自己的内置版本。
| 归档时间: |
|
| 查看次数: |
2681 次 |
| 最近记录: |