Невозможно привести из Throwable в MyException - PullRequest
4 голосов
/ 18 ноября 2010

Я ловлю Exception и пытаюсь проверить getCause() его, выполняя некоторые дальнейшие действия, если cause имеет тип MyException, определенный в другой библиотеке.

Я получаю эту ошибку Eclipse (компилятор?) При попытке проверить e.getCause() instanceof MyException:

Несовместимые типы условных операндов Throwable и MyException

При попытке разыграть (MyException) e.getCause() я получаю:

Невозможно привести из Throwable в MyException

Я могу скомпилировать e.getCause().getClass().equals(MyException.class), и это возвращает true.

1 Ответ

3 голосов
/ 18 ноября 2010

Решение состоит в том, что MyException унаследовано от Exception во внешней библиотеке, но проект верхнего уровня не включал эту внешнюю библиотеку.Я обнаружил это, когда создал private class, который extend ed MyException, и получил несогласованную ошибку иерархии типов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...