Почему Eclipse жалуется на @Override на методы интерфейса?

У меня есть существующий проект, который использует @Override для методов, которые переопределяют методы интерфейса , а не методы суперclassа. Я не могу изменить это в коде, но я бы хотел, чтобы Eclpse перестала жаловаться на аннотацию, поскольку я все еще могу построить с Maven.

Как я могу отключить эту ошибку?

Примечание. Из-за требований проекта мне нужно скомпилировать Java 1.5.

    Использование annotations @Override для методов, реализующих объявленные интерфейсом, действует только с Java 6. Это ошибка в Java 5.

    Убедитесь, что ваши проекты IDE настроены на использование Java 6 JRE и что для «исходной совместимости» установлено значение 1.6 или выше. Откройте диалоговое окно «Окно»> «Настройки» и перейдите к Java> «Компилятор». Там вы можете установить «Уровень соответствия компилятора» на 1.6.

    Помните, что Eclipse может переопределить эти глобальные настройки для конкретного проекта, поэтому также проверьте их.


    Обновить:

    Ошибка в Java 5 связана не только с Eclipse; использование javac непосредственно из командной строки даст вам ту же ошибку. Недействительный исходный код Java 5.

    Тем не менее, вы можете указать параметр -target 1.5 для javac JDK 6, который будет создавать файл classа версии Java 5 из исходного кода Java 6.

    Project-> Properties-> java compiler->

    Включить специальные настройки проекта – их соответствие компиляторам – 1,6 сгенерированных файлов classов и совместимости источников – 1,5

    Проверьте также, имеет ли проект фасет. Версия java может быть переоценена.

    Можно настроить параметры проекта. Выберите проект Project > Properties > Java Compiler , uncheck Enable project specific settings или измените Jdk 1.6 и выше, не забывая соответствующую JRE .
    Если он не работает, удалите проект из eclipse, удалите .settings folders .project , .classpath , .classpath . clean and build the project, import it back into eclipse and then reset your Java compiler. Clean and build your project clean and build the project, import it back into eclipse and then reset your Java compiler. Clean and build your project и затмение. Это сработало для меня

    Вы можете изменить настройки компилятора, чтобы принять синтаксис Java 6, но генерировать вывод на Java 5 (как я помню). И установите «Совместимость файлов с расширенными classами» немного ниже, если это необходимо для вашей среды выполнения. Обновление : я проверил Eclipse, но он жалуется, что я установил совместимость источника с 1.6 и совместимостью classа с 1.5. Если 1.6 не разрешено, я обычно вручную комментирую оскорбительные annotations @Override в источнике (что не помогает вашему делу).

    Update2: Если вы делаете только ручную сборку, вы можете написать небольшую программу, которая копирует исходный проект в новую, выдает annotations @Override из источников java и вы просто нажимаете «Чистый проект» в Eclipse.

    Вы также можете попробовать Retroweaver для создания Java5-версии из classов Java6.

    Используйте Eclipse для поиска и замены (удаления) всех экземпляров «@Override». Затем добавьте переопределения неинтерфейса, используя «Очистить».

    шаги:

    1. Выберите проекты или папки, содержащие исходные файлы.
    2. Перейдите в «Поиск> Поиск …» (Ctrl-H), чтобы открыть диалог поиска.
    3. Перейдите на вкладку «Поиск файла».
    4. Введите «@Override» в «Содержит текст» и «* .java» в «Шаблоны имен файлов». Нажмите «Заменить …», затем «ОК», чтобы удалить все экземпляры «@Override».
    5. Перейдите в «Окно> Настройки> Java> Стиль кода> Очистить» и создайте новый профиль.
    6. Отредактируйте профиль и снимите все флажки, кроме «Отсутствующий код> Добавить отсутствующие annotations> @Override». Убедитесь, что «Реализации методов интерфейса» не отмечены.
    7. Выберите проекты или папки, содержащие исходные файлы.
    8. Выберите «Источник> Очистить …» (Alt + Shift + s, затем u), затем «Готово», чтобы добавить переопределения неинтерфейса.

    Я понял вашу проблему, изменил ваш jdk с вашего jdk на большее, чем 1.5

    Путем настройки того, что проекты IDE настроены на использование Java 6 JRE или выше, иногда не удаляет ошибку eclipse. Для меня помог перезапуск Eclipe IDE.

    Даже после того, как вы изменили настройку соответствия компилятора на 1.6 или 1.7 из вкладки Windows, затем предпочитаете, затем java, затем компилятор и устанавливаете соответствие компилятора, у меня все еще была эта проблема. Идея состоит в том, что нам нужно перейти в папку проекта, щелкнуть правой кнопкой мыши, Java и установить соответствие компилятора 1.6 или более высоким. Это сработало для меня.

    Давайте будем гением компьютера.