Pobrałem, rozpakowałem i skonfigurowałem Eclipse 3.4.2 z niektórymi wtyczkami (zauważalne, EPIC, Clearcase, QuantumDB, MisterQ).
Teraz, gdy edytuję projekty Java, uzupełnianie kodu nie działa. Po wpisaniu String.
i naciśnięciu ctrl+ spacewyskakujące okienko pokazuje „Brak domyślnych propozycji”, a pasek stanu na dole pokazuje „Brak dostępnych uzupełnień”.
Jakieś pomysły?
Odpowiedzi:
Spróbuj przywrócić domyślne opcje w „
Windows > Preferences > Java > Editor > Content Assist > Advanced
”Przykład rodzaju danych wyświetlanych na tym ekranie preferencji, ale niekoniecznie to, co aktualnie masz.
(Od Vadima w tym poście na blogu „Content Assist Duplicates in Eclipse (Mylyn)” :
jeśli masz zduplikowane wpisy Mylyn, odznacz zduplikowane wpisy, które nie zawierają „
(Mylyn)
” w nazwie)Strona pomocy Eclipse definiuje domyślną listę do przywrócenia:
źródło
Dodaję tutaj odpowiedź na wypadek, gdyby ktoś znalazł ją w Google. Te same objawy; inny problem. Dla mnie pamięć podręczna typów uległa uszkodzeniu.
From http://mschrag.blogspot.co.nz/2009/01/open-type-cant-find-your-class.html
źródło
Jeśli ktoś tu przychodzi i chce aktywować funkcję autouzupełniania, przejdź do
Preferences -> Java -> Editor -> Content Assist.
Następnie w sekcji Automatyczna aktywacja wpisz wyzwalacze Automatycznej aktywacji dla Java:
źródło
Dla osób korzystających z Xfce + z włączoną wtyczką IBus może wystąpić konflikt skrótów klawiaturowych.
Zobacz więcej informacji na moim blogu: http://peter-butkovic.blogspot.de/2013/05/keyboard-shortcut-ctrlspace-caught-in.html
AKTUALIZACJA :
jak sugeruje komentarz @ nhahtdh, dodając kilka dodatkowych informacji, aby odpowiedzieć bezpośrednio: Wtyczka IBus w Xfce używa domyślnie Ctrl+ Spaceskrótu do przełączania układu klawiatury. Aby go zmienić, przejdź do: Opcje i zmień go na cokolwiek innego.
źródło
LXDE
. Przejdź doPreferences
->Keyboard Input
i usuńNext input method
skrót.Sprawdź lib swojego projektu. Możliwe, że masz dwa takie pliki jar, w których dostępna jest ta sama klasa, albo powiedz, że jedną klasę kodu można uzupełnić w dwóch plikach jar. W takim przypadku również zaćmienie przestaje asystować kodowi, ponieważ jest całkowicie pomieszany.
Lepszym sposobem na sprawdzenie tego jest przejście do pliku, w którym asystent nie działa i skomentowanie wszystkich importów tam, niż dodawanie importów jeden po drugim i sprawdzanie przy każdym imporcie, czy asystent kodu działa, czy nie. Możesz łatwo znaleźć klasę ze zduplikowanymi referencjami .
źródło
Żadne z tych nie działało dla mnie.
Ten problem występował tylko raz w konkretnej klasie. To, co w końcu zadziałało, to usunięcie obraźliwej klasy i odtworzenie jej. Problem rozwiązany ... tajemnica nie tyle!
źródło
Jeśli masz zainstalowany Google Toolbar dla IE, być może możesz napotkać ten sam problem. Ponieważ pasek narzędzi przechwytuje skrót Ctrl +Space.
źródło
Miałem ten problem i jak @Marc, tylko na określonej klasie. Odkryłem, że muszę wyznaczyć Open With = Java Editor. Jako początkujący Eclipse nawet nie zdawałem sobie sprawy, że używam zwykłego edytora tekstu.
W eksploratorze pakietów kliknij plik prawym przyciskiem myszy i wybierz „Otwórz za pomocą”.
źródło
Napotkałem ten problem i spędziłem godziny próbując go rozwiązać. starałem się postępować zgodnie z krokami wymienionymi w różnych odpowiedziach powyżej, rozwiązanie, które znalazłem, jest takie same, jak sugerowała Mona, ale nieco inne. Próbowałem dodać jako komentarz do odpowiedzi Mony, ale żadna opcja nie była dostępna. Problem z moim zaćmieniem polegał na tym, że ścieżka klasy jakoś uległa uszkodzeniu, a brakowało wszystkich słoików i zależnych projektów. po pobraniu najnowszej ścieżki .clas z repozytorium działało dobrze.
źródło
Mam również do czynienia z tym problemem, ale rozwiązuje się go w inny sposób. Kroki, które wykonuję, mogą być pomocne dla innych.
źródło
Po sprawdzeniu konfiguracji i zakończeniu nadal nie działa:
Czy widzisz właściwą ikonę obok pliku ?:
Powie ci, jak plik będzie traktowany przez Eclipse:
Publikuję tę odpowiedź, ponieważ miałem tę historię z artefaktem aplikacji webowej Maven. Domyślnie Maven-WebApp nie tworzy folderów dla źródeł, a ja umieszczam Java w zasobach, zastanawiając się przez 5 minut, co się dzieje ... :)
źródło
Sprawdź, czy nie odfiltrowano wielu opcji w oknie> Preferencje> Java> Wygląd> Filtry typów
Elementy na tej liście nie pojawią się w szybkiej poprawce, zostaną automatycznie uzupełnione ani pojawią się w innych różnych miejscach, takich jak okno dialogowe Typ otwarty.
źródło
Innym rozwiązaniem, które działało dla mnie, jest przejście do Java -> Appearence -> Type Filters i wyłączenie wszystkich
źródło
Może to pomaga innym osobom, które napotykają ten sam problem.
Moja konfiguracja: stary projekt Gradle (wersja Gradle 2.12) wykonany przez kogoś innego, zaimportowany za pomocą Kreatora importu Gradle do STS (Eclipse Oxygen.2 (4.7.2)).
Uzupełnianie kodu też nie działało (i nadal mam puste Js w plikach Java), ale przynajmniej dostałem uzupełnienie kodu do pracy, wykonując:
źródło
W moim przypadku Intellisense zniknął tylko w kilku klasach w jednym projekcie. Okazało się, że było to spowodowane brakiem biblioteki na ścieżce kompilacji (chociaż wcześniej działała).
Więc zdecydowanie sprawdź wszystkie błędy lub problemy w Eclipse i spróbuj znaleźć, czy brakuje biblioteki
źródło
Natknąłem się na to i ostatecznie otworzyłem plik za pomocą edytora tekstu, a nie edytora Java.
Chciałem skomentować odpowiedź https://stackoverflow.com/users/607470/elroy-flynn, ale dodawanie komentarza działa tylko po uzyskaniu oceny 50? nie jestem pewien WTF, który jest ...
Dzięki, Tom
źródło
Dla mnie problemem był konflikt między kilkoma wersjami tej samej biblioteki. Asystent Eclipse korzystał ze starszej wersji niż maven.
Musiałem przejść do katalogu .m2 i usunąć niechcianą wersję lib + zrestartować zaćmienie.
źródło
Mam problemy z Eclipse Neon podczas edycji pliku, który nie należy do katalogu projektu . Gdy kopiuję ten sam plik do katalogu głównego projektu, nawet do katalogu src, uzupełnianie zaczyna działać.
Gdy plik jest otwierany z innego katalogu, działa tylko uzupełnianie dla JRE. To znaczy:
java.
kończy, alejunit.
nie robi.źródło
Na wypadek, gdyby ktoś znalazł się w rozpaczliwym punkcie, w którym nic nie działa ... Zdarzyło się nam, że asystent zawartości jakoś skurczył się, więc nie pojawiła się żadna sugestia, można było zobaczyć „Press Ctrl + Space for non-Java ...”. Tak więc wystarczyło przeciągnąć róg asystenta zawartości, aby powiększyć wyskakujące okienko.
Wiem, żenujące. Mam nadzieję, że to pomoże.
Uwaga: był to serwer Ubuntu z Xfce4 korzystający z Eclipse Oxygen.
źródło
Dla tych, którzy używają najnowszej wersji 3-19 eclipse:
Zdarzyło mi się to podczas aktualizacji z Oxygen do 3-19 wersji eclipse, więc zakładam, że funkcja autouzupełniania nie migrowała poprawnie podczas procesu aktualizacji.
Jedynym rozwiązaniem, które działało dla mnie, było utworzenie nowego obszaru roboczego zaćmienia i zaimportowanie do niego projektu / projektów. Może to potrwać kilka minut, ale warto - w porównaniu do czasu poświęconego na inne rozwiązania ...
źródło
Jeśli występuje to w wyliczeniu lub podczas inicjowania tablicy za pomocą anonimowych klas, jest to znany błąd w środowisku Eclipse. Zobacz Asystent zawartości Eclipse nie działa na liście parametrów stałej wyliczeniowej .
źródło
Wystąpił ten problem od czasu aktualizacji do Eclipse 2019-09. W oparciu o niektóre z powyższych sugestii, to działało dla mnie.
Musiałem przejść do Eclipse -> Preferencje -> Java -> Edytor -> Content Assist -> Advanced.
Dowiedziałem się, że jeśli włączę dowolną propozycję powiązania klawiszy, propozycję Java Non-Type, Java, Java (Task-Focused) lub Java Type, wtedy będę mógł użyć funkcji autouzupełniania. Jeśli włączyłem je wszystkie, to nie tylko wykonałem automatyczną pracę, ale pojawiło się na liście zduplikowane metody. Zgaduję, ale prawdopodobnie użyję propozycji typu Java. Docenione zostanie wszelkie wyjaśnienie różnic między tymi czterema typami.
źródło
Uruchamianie STS w projektach Java Spring Boot, oto co dla mnie działa:
źródło