wake-up-neo.com

Eclipse-Indexierung funktioniert nicht

Ich verwende CDT in Eclipse 3.5.2 Galileo in Ubuntu. 

Der Indexer meiner Eclipse funktioniert manchmal nicht. Damit meine ich, wenn ich ctrl auf eine Funktion klicke, heißt es Could not find symbol in index. Wenn Sie auf die Taste F3 klicken, wird dieselbe Fehlermeldung angezeigt. An den meisten Orten funktioniert es nicht und funktioniert an sehr wenigen Orten.

Ich habe einige andere Versionen von Eclipse gesehen, wo unter Datei ein Menüpunkt für die Indizierung aufgeführt ist. Wie File-> Indexer-> Rebuild .... Aber in meinem Dateimenü gibt es keinen solchen Menüpunkt für den Indexer.

Wird die einzige Möglichkeit sein, eine andere Version von Eclipse zu verwenden, oder fehlt etwas? Jegliche Hinweise dazu wären hilfreich.

13
liaK

In meinem Fall hat nichts funktioniert und zuletzt habe ich Folgendes getan:

 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
16
sree

Gehen Sie folgendermaßen vor, um Pfade mit Code zum Analysieren hinzuzufügen:
1. Klicken Sie mit der rechten Maustaste auf das Projekt
2. Wählen Sie Eigenschaften aus
3. Gehen Sie zu C/C++ General
4. Gehen Sie zu Pfad und Symbolen
5. Wenn die Pfade fehlen, fügen Sie Pfade hinzu.

Gehen Sie folgendermaßen vor, um den Code erneut zu analysieren:
1. Klicken Sie mit der rechten Maustaste auf das Projekt
2. Wählen Sie Index aus
3. Wiederaufbau 

Wenn dies nicht funktioniert, haben Sie kein Glück. c ++ ist eine sehr schwer zu analysierende Sprache.

8
BЈовић

Wenn Ihr Indexer stecken bleibt und unendliche Zeit blockiert, können Sie die mit dem Indexer verknüpften Dateien Ihres Projekts aus .metadata löschen. Stellen Sie sicher, dass Eclipse in der Zwischenzeit nicht läuft.

Das Verzeichnis .metadata befindet sich als versteckter Ordner im Pfad Ihres Arbeitsbereichs.

Dort können Sie navigieren zu: 

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

Innerhalb des .settings/-Verzeichnisses befinden sich .prefs-Dateien, in denen die Voreinstellungen jedes Projekts einzeln gespeichert werden.

Zum Beispiel: org.Eclipse.cdt.core.prj-test-project.prefs speichert die Einstellungen des Projekts test-project

Öffnen Sie diese Datei mit dem Texteditor und entfernen Sie alle Zeilen, die mit indexer beginnen. Dadurch werden die Indexereinstellungen für dieses bestimmte Projekt auf die Standardeinstellungen zurückgesetzt.

Alternativ können Sie alle Zeilen entfernen, die mit indexer beginnen, und zwar aus org.Eclipse.cdt.core.prefs; Dadurch werden die Indexer-Einstellungen für den gesamten Arbeitsbereich zurückgesetzt.

4
user4786271

Ich glaube, Sie können den Index löschen, indem Sie Folgendes ausführen:

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

Und dann Eclipse neu starten. Der Index wird dann neu erstellt.

Dies funktionierte für mich in einem Java-Projekt, aber ich stelle mir vor, dass es für alle (die meisten?) Projekttypen denselben Index gibt.

2
dimo414

Hier ist die Lösung, die ich verwendet habe, nachdem Project->C++ Index->Rebuild fehlgeschlagen ist. Dieser Trick verhindert, dass Sie Ihr aktuelles Projekt löschen:

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: Stellen Sie sicher, dass es sich bei Ihrem ursprünglichen Projekt um ein tatsächliches C++ - Projekt handelt. Andernfalls funktioniert es offensichtlich nicht.

0
Flo

Sie können versuchen, den Index neu zu erstellen. Klicken Sie mit der rechten Maustaste auf das Projekt in der Projektansicht. Dann Index -> Rebuild.

0
paarandika

Bei mir hat das geklappt:

  • Klicken Sie mit der rechten Maustaste und schließen Sie das Projekt
  • Öffnen Sie das Projekt erneut
  • Klicken Sie mit der rechten Maustaste und wählen Sie Index-> ​​Neu erstellen

Ich hoffe es hilft niemandem.

0
Saadat

Konvertieren Sie ein Projekt in C oder C++ :

Right click on project: Neu> In C/C++ - Projekt konvertieren

In "Convert to C or C++": Wählen Sie C/C++ - Projekt

In "Project options": Aktivieren Sie "Projekttyp angeben".

...Project Type: Wähle "Makefile-Projekt"

...Toolchains: Brutto-GCC

0
user3115782

Ich hatte das gleiche Problem und es stellte sich heraus, dass der Indexordner im Besitz von root war (ich habe Eclipse aus irgendeinem Grund einmal als Root ausgeführt). Ich habe den Projektordner mit Sudo chown -R username projectfolderpath zurückgefordert und das Problem gelöst.

0
Augusto Sérgio
  1. Führen Sie Eclipse.exe -clean -refresh aus, wo die Eclipse installiert ist.
  2. Erstellen Sie in Eclipse ein neues C/C++ - Projekt mit dem angegebenen Quellcode-Ordnerpfad. (Nicht bei neuem Projekt basierend auf vorhandenem Arbeitsbereich)

Die obigen Schritte haben für mich funktioniert.

0
kapilddit