Ошибка: тип T нельзя использовать в GenericTypeMatcher - ожидается выражение - PullRequest
1 голос
/ 12 марта 2019

Я попытался реализовать универсальный метод, который будет возвращать GenericTypeMatcher (предоставленный AssertJ Swing) параметра типа T. Вы можете увидеть метод здесь .

Проблема в том, что я получаю ошибку Expression expected для поддерживаемого типа GenericTypeMatcher с Class<T>.

У вас есть идеи, как ее решить?

1 Ответ

1 голос
/ 12 марта 2019

Проблема в том, что GenericTypeMatcher принимает аргумент Class<T>.
Вместо этого вы передаете определение типа, которое недопустимо.

private static <T extends Component> GenericTypeMatcher<T> getMatcher(final Class<T> clazz) {
   return new GenericTypeMatcher<T>(clazz) {
      @Override
      protected boolean isMatching(final T object) {
         return ...
      }
   }
}

Использование

YourClass.getMatcher(YourComponent.class);
...