У меня проблема с компиляцией, которая является странной. Я не могу это исправить. Тот же самый фрагмент кода отлично работает в другом проекте
org.mockito.Mockito.when(jdbcTemplate.query(org.mockito.Matchers.anyString(),
org.mockito.Matchers.any(BeanPropertyRowMapper.class))).thenReturn(SOMELIST);
Я получаю ошибку, поскольку
The method query(String, ResultSetExtractor<T>) in the type JdbcTemplate is not applicable for the arguments (String, BeanPropertyRowMapper)
Но когда я это делаю, я не получаю никаких ошибок. Но я этого не ожидаю.
BeanPropertyRowMapper<MyClass> mapper =
new BeanPropertyRowMapper<MyClass>(MyClass.class);
org.mockito.Mockito.when(jdbcTemplate.query(org.mockito.Matchers.anyString(),
mapper)).thenReturn(SOMELIST);
Я не уверен, что это проблема Eclipse. Цените свою помощь по этому поводу.
Поскольку BeanPropertyRowMapper<T>
является общим интерфейсом, вы должны вызывать any()
следующим образом:
Mockito.when(jdbcTemplate.query(Matchers.anyString(),
Matchers.<BeanPropertyRowMapper<MyClass>>any())).thenReturn(SOMELIST);
Проверьте зависимость (весовые банки) на несоответствие версий между проектами
jdbcTemplate
имеет?... in the type JdbcTemplate
».