Добавить предупреждение об отсутствующей аннотации @Override для реализации интерфейса в Eclipse
В Eclipse 3.4.1 с использованием JDK1.6.0_10, как я могу активировать предупреждение о пропавшем @Override
аннотация на метод, который реализует метод интерфейса?
В окне настроек этот параметр:
Java> Компилятор> Ошибки / Предупреждения> Аннотации> Отсутствует аннотация '@Override'
отлично работает для отсутствующих аннотаций в методах, которые переопределяют метод суперкласса, но ничего не делает для методов интерфейса.
4 ответа
Это невозможно в Eclipse 3.4.1. Это известная проблема. См. Эту страницу отчета об ошибках для получения дополнительной информации.
Страхуй то, что я сказал в другой ветке. Очевидно, это не опция компилятора, а проблема совместимости с Java: если у вас версия совместимости 5, вы не сможете комментировать методы реализации интерфейса. Если ваша версия совместимости 6, то вы сможете.
Однако я не думаю, что есть способ заставить Eclipse генерировать ошибку, если вы не аннотируете каждый реализованный метод. С этой страницы:
Отсутствует аннотация "@Override": если этот параметр включен, компилятор будет выдавать ошибку или предупреждение всякий раз, когда он встречает метод, переопределяющий другой реализованный метод, и аннотация "@Override" отсутствует.
У меня работала совместимость с 1.6 вместо 1.5: Eclipse Java EE IDE для веб-разработчиков.
Идентификатор сборки: 20100218-1602
Может быть, я что-то упускаю, но методы интерфейса уже должны быть реализованы классами реализации.
Компилятор выдаст ошибку, если интерфейс реализован не полностью.