'Must Override a Superclass Method' Errors after importing a project into Eclipse
Ошибки "Необходимо переопределить метод суперкласса" после импорта проекта в Eclipse
Каждый раз, когда мне приходится повторно импортировать свои проекты в Eclipse (если я переустановил Eclipse или изменил расположение проектов), почти все мои переопределенные методы отформатированы неправильно, что вызывает ошибку:
Метод должен переопределять метод суперкласса
Возможно, стоит упомянуть, что это связано с проектами Android, по какой-либо причине значения аргументов метода не всегда заполняются, поэтому мне приходится заполнять их вручную самостоятельно. Например:
//This methods arguments were not automatically provided publicvoidonCreateContextMenu(ContextMenu arg1, View arg2, ContextMenuInfo arg3) { }
});
Странно то, что если я удаляю свой код и заставляю Eclipse автоматически воссоздавать метод, он использует те же имена аргументов, которые у меня уже были, поэтому я действительно не знаю, в чем проблема, кроме того, что он автоматически форматирует метод для меня.
Становится довольно сложно вручную воссоздавать ВСЕ мои переопределенные методы вручную. Если кто-нибудь может объяснить, почему это происходит или как это исправить. Я был бы очень рад.
Возможно, это связано с тем, как я форматирую методы, которые находятся внутри аргумента другого метода?
Переведено автоматически
Ответ 1
Eclipse по умолчанию использует Java 1.5, и у вас есть классы, реализующие методы интерфейса (которые в Java 1.6 могут быть помечены @Override, но в Java 1.5 могут применяться только к методам, переопределяющим метод суперкласса).
Перейдите в настройки вашего проекта / IDE и установите уровень компилятора Java равным 1.6, а также убедитесь, что вы выбрали JRE 1.6 для выполнения вашей программы из Eclipse.
Ответ 2
С помощью Eclipse Galileo вы переходите в пункт меню Eclipse -> Настройки, затем в диалоговом окне выбираете Java и компилятор.
Теперь он по-прежнему может показывать уровень соответствия компилятору 1.6, но вы по-прежнему видите эту проблему. Итак, теперь выберите ссылку "Настройте параметры для конкретного проекта ...", и там вы увидите, что для проекта установлено значение 1.5, теперь измените его на 1.6. Вам нужно будет сделать это для всех затронутых проектов.
Этот византийский интерфейс меню / диалога типичен для плохого дизайна пользовательского интерфейса Eclipse.
Ответ 3
На случай, если это случится с кем-либо еще, кто пробовал как alphazero, так и метод Пола и все равно не сработал.
Для меня eclipse каким-то образом "кэшировал" ошибки компиляции даже после выполнения Project > Clean...
Мне пришлось снять флажок "Проект"> "Строить автоматически", затем выполнить проект> "Очистить", а затем выполнить сборку снова.
Также, если есть сомнения, попробуйте перезапустить Eclipse. Это может исправить множество неудобных, необъяснимых ошибок.
Ответ 4
Чтобы устранить эту проблему, перейдите в свойства вашего проекта -> Компилятор Java -> Выберите уровень соответствия компилятора 1.6-> Применить.