2011-11-09 13 views
5

Czy istnieje sposób na skomentowanie wszystkich @Overrides, które okazują się być błędami Eclipse, które uniemożliwiają tworzenie/uruchamianie aplikacji?Pozbyć się wszystkich błędów @Override w Eclipse?

+0

(Inne niż ręczne znajdowanie wszystkich 234234 wystąpień ..) – ina

+2

Dlaczego chcesz usunąć tak wiele przesłonięć? Zwykle Override mówi ci, że coś jest nie tak z twoim podpisem metod ... usunięcie Overrides zazwyczaj usuwa ostrzeżenie, a nie problem. –

+0

czy to błędy (czerwony), czy ostrzeżenia (żółty)? jeśli są one czerwone, a następnie pozbycie się ich nie pomoże w tworzeniu aplikacji, metody, które są nadrzędne, muszą zostać naprawione. –

Odpowiedz

7

W

Okno-> Preferencje-> Java-> Compiler-> Błędy/ostrzeżenia

Istnieje grupa o nazwie "Annotations". Pod tam sprawdzić, czy

„Brak adnotacji«@Override»jest ustawiony na«Ignoruj»lub«Ostrzeżenie», a nie«błąd»

Edycja. Chciałem dodać, że można uzyskać Eclipse automatycznie dodawanie adnotacji @Override plików, które można zapisać w polu Zapisz Actions.

Okno-> Preferencje-> Java-> redaktora> Zapisz Akcje

jest pole do "Additional Actions", a jeśli otwierasz "Configure "można wybrać zakładkę" Missing Code "i wybrać" Add Missing Annotations ", gdzie można wybrać adnotacje do automatycznego dodawania.

+0

Wygląda na to, że brakowało Zastąpień, ale nie tylko ignoruje Zastąpienia, które są tam i tak – ina

10

Więc jeśli rozumiem, że w kodzie źródłowym są już adnotacje @Override, ale pojawiają się na nich błędy kompilacji?

Jeśli tak, to masz zainstalowany nieprawidłowy pakiet jdk.

Potrzebujesz co najmniej jdk1.5 do korzystania z tych adnotacji na temat metod wywodzących się z klas.

Potrzebujesz co najmniej jdk1.6, aby użyć tych adnotacji na temat metod wywodzących się z interfejsów.

+1

+1. Używanie Java 5 zamiast 6 i otrzymywanie mnóstwa błędów z powodu @Override na zaimplementowanych metodach interfejsu jest najczęstszym przypadkiem. –

+0

Używam wersji 1.6 zgodnie z java -version - Środowisko uruchomieniowe Java (TM) SE (kompilacja 1.6.0_26-b03-384-10M3425) Serwer wirtualny Java HotSpot (TM) 64-bitowy (kompilacja 20.1-b02-384, mieszany mode) – ina

1

Zakładam, że kompilujesz się przeciwko Java 1.5 lub wcześniejszej wersji, w której kompilator traktuje adnotacje @Override metod interfejsu jako błędy.

Użyj funkcji Eclipse, aby wyszukać i zastąpić (usunąć) wszystkie wystąpienia elementu "@Override". Następnie dodaj z powrotem nadpisania bez interfejsu za pomocą "Oczyść".

Kroki:

  1. wybrać projekty lub foldery zawierające pliki źródłowe.
  2. Przejdź do "Szukaj> Wyszukaj ..." (Ctrl-H), aby wywołać okno dialogowe wyszukiwania.
  3. Przejdź do zakładki "Wyszukiwanie pliku".
  4. Wpisz "@Override" w "Zawiera tekst" i "* .java" w "Wzorce nazw plików". Kliknij "Zamień ...", a następnie "OK", aby usunąć wszystkie wystąpienia "@Override".
  5. Przejdź do "Okno> Preferencje> Java> Styl kodu> Oczyść" i utwórz nowy profil.
  6. Edytuj profil i odznacz wszystko oprócz "Brakujący kod> Dodaj brakujące adnotacje> @Override". Upewnij się, że "Wdrażanie metod interfejsu" nie jest zaznaczone.
  7. Wybierz projekty lub foldery zawierające pliki źródłowe.
  8. Wybierz "Źródło> Oczyść ..." (Alt + Shift + s, następnie u), a następnie "Zakończ", aby dodać z powrotem nadpisania bez interfejsu.
1

Mam Java 8 w moim systemie i stoi ten sam problem w czasie zaćmienia. Problem jest, ponieważ JDK Zgodność 1.5

Oto jak naprawiłem go

Otwórz Eclipse, Preferencje -> Java -> Compiler -> JDK Zgodność

zmienić go na 1,6

+0

dziękuję, że działa dla mnie problem to Java 1.5 –

+0

Z jakiegoś dziwnego powodu to nie działa dla mnie ... jest już ustawione na Java 8, ale nadal nie pozwala używać @Override, zachowując się jak 1.5. –

+0

Okazuje się, że musiałem ustawić tę właściwość na poziomie projektu, a nie tylko globalny poziom preferencji zaćmienia. –

Powiązane problemy