2012-07-06 17 views
9

Używam CDT w Eclipse 3.5.2 Galileo w Ubuntu.Indeksowanie Eclipse nie działa

Indeksowanie mojego zaćmienia nie działa czasami. Rozumiem przez to, że gdy klikam funkcję , jest to Could not find symbol in index. Kliknięcie przycisku F3 powoduje również wyświetlenie tego samego komunikatu o błędzie. Właściwie większość miejsc nie działa i działa w bardzo niewielu miejscach.

Widziałem kilka innych wersji Eclipse, gdzie w menu Plik wymieniono pozycję menu do indeksowania. Tak jak plik-> Indexer-> Rebuild .... Ale w moim menu File nie ma takiej pozycji menu dla Indexera.

Czy jedynym sposobem będzie użycie innej wersji Eclipse lub czegoś brakuje? Wszelkie wskazówki dotyczące tego będą pomocne.

+0

Prawdopodobny duplikat [Wyczyść indeks Eclipse, jest niezsynchronizowany z kodem] (http://stackoverflow.com/questions/3008293/clean-eclipse-index-it-is-out-of-sync-with- kod) –

Odpowiedz

7

Aby dodać ścieżki zawierające kod, aby analizować, wykonaj następujące kroki:
1. Kliknij prawym przyciskiem myszy na projekcie
2. Wybierz Właściwości
3. Przejdź do C/C++ generalnego
4. Przejdź do ścieżki i symbole
5. Jeśli brakuje ścieżek, dodaj ścieżki.

Aby ponownie przeanalizować kod wykonaj następujące kroki:
1. Kliknij prawym przyciskiem myszy na projekcie
2. Wybierz Index
3. Odbuduj

Jeśli to nie zadziała, to jesteś z szczęście. C++ jest bardzo trudnym językiem do analizy.

11

w moim przypadku nic się nie pracował i wreszcie zrobiłem następujące:

1) Close the project 
2) Delete the project(do not check from disk option) 
3) create new project with existing code(use the deleted project path) 
4) Successfully indexed my c++ code 
+1

Niestety jedyne rozwiązanie nawet z najnowszym zaćmieniem MARS ... –

+0

Działa idealnie. – Slot

0

Wierzę, że można usunąć indeks uruchamiając:

rm .metadata/.plugins/org.eclipse.jdt.core/*.index 

a następnie ponowne uruchomienie Eclipse. Następnie odbuduje swój indeks.

To działało dla mnie w projekcie Java, ale wyobrażam sobie, że jest to ten sam indeks dla wszystkich (większości?) Typów projektów.

1

Jeśli indeksator utknął i zawiesza się na czas nieskończony, możesz usunąć pliki indeksujące związane z projektem z .metadata. Upewnij się, że eclipse nie działa w międzyczasie.

Katalog .metadata znajduje się jako ukryty folder na ścieżce obszaru roboczego.

Nie można przejść do:

<workspace_path>/.metadata/.plugins/org.eclipse.core.runtime/.settings/

Wewnątrz katalogu .settings/ istnieją .prefs pliki, które przechowują preferencje każdego projektu indywidualnie.

Na przykład: org.eclipse.cdt.core.prj-test-project.prefs zapamiętuje preferencje testowego projektu

otworzyć ten plik w edytorze tekstowym i usunąć wszystkie linie zaczynające się indexer projekt .Spowoduje to zresetowanie ustawień indeksora dla tego konkretnego projektu do wartości domyślnych.

Można także usunąć wszystkie usuwane wszystkie wiersze rozpoczynające się od indexer od org.eclipse.cdt.core.prefs; spowoduje to zresetowanie ustawień indeksera dla całego obszaru roboczego.

+0

to faktycznie zadziałało –

0

Możesz spróbować odbudować indeks. Kliknij projekt prawym przyciskiem myszy w widoku projektu. Następnie Index -> Rebuild.

0

Oto rozwiązanie, którego użyłem po niepowodzeniu Project->C++ Index->Rebuild. Ta sztuczka uniknąć usuwania aktualny projekt:

1) Copy the current project (Right click->Copy from Project Explorer) 
2) Paste it (Right click->Paste from Project Explorer) and give the copy another name 
3) The indexer should now start and index both projects 
4) When indexation is complete, you can delete the copy 

PS: Upewnij się, że oryginalny projekt jest rzeczywiste C++ lub projektu to oczywiście nie będzie działać.