我的Eclipse IDE(基于Eclipse Luna SR1 4.4.2的Spring Tool Suite版本3.6.4.RELEASE)在使用此Mockito代码时出错:
when(searcherClient.findDocumentsByCriteria(
any(GenericCriteria.class),
any(ParameterizedTypeReference.class)))
.thenReturn(
DataFixture.getGenericDocumentResponse());
错误是:
方法findDocumentsByCriteria(GenericCriteria, SearcherClient类型中的ParameterizedTypeReference)不是 适用于参数(GenericCriteria, ParameterizedTypeReference)
方法的签名是:
public <T> T findDocumentsByCriteria(
GenericCriteria criteria,
ParameterizedTypeReference<T> responseType)
当我从eclipe(使用Oracle JDK 1.8.0_73)运行maven构建时,我感到很困惑,它取得了成功。其他同事使用相同的Eclipse STS版本,但操作系统不同,没有编译错误。我的操作系统是Ubuntu 15.04。
答案 0 :(得分:1)
Eclipse使用自己的Java编译器(无论您如何配置它),有时会显示与javac的不兼容性。 eclipse编译器和javac编译器都有一些不断修复的错误。考虑更新到最新的Eclipse Mars.2。
答案 1 :(得分:0)
我有一个类似的问题,maven编译正常,但Eclipse本身显示某种错误,你必须在项目属性下检查2个地方:
构建路径
java编译器
如果您只正确设置了其中一个 - 它就无法正常工作。