Eclipse wird erfolgreich kompiliert, weist aber semantische Fehler auf
Benutzer von Eclipse Juno ADT stoßen möglicherweise auf ein Problem, bei dem Code erfolgreich kompiliert wird, Eclipse jedoch semantische Fehler meldet. Auswirkungen auf Symbole aus Bibliotheken wie OpenCV4Android.
Ursache:
Das Problem entsteht durch einen gestörten CDT-Index nach der Aktualisierung des Android NDK und der Änderung von Include-Pfaden.
Symptome:
- Es werden keine Fehler angezeigt, bis eine C-Datei im JNI-Ordner geöffnet wird.
- Build-Vorgänge sind erfolgreich, aber das Ausführen der Anwendung nach dem Öffnen einer C-Datei führt zu „Feld ‚‘ „Konnte nicht gelöst werden“-Fehler.
- Semantische Fehler treten hauptsächlich bei Symbolen wie „line“, „queryIdx“ und „trainIdx“ von OpenCV4Android auf.
Mögliche Lösung:
In den ausgewählten Projekteinstellungen in Eclipse:
- Gehen Sie zu C/C Allgemein -> Code-Analyse -> Wird gestartet.
- Deaktivieren Sie sowohl „Codeanalyse-Tools bei jedem Build aktivieren“ als auch „C/C-Syntaxvalidierung und semantische Analyse aktivieren“.
- Schließen Sie das Projekt und öffnen Sie es erneut oder starten Sie Eclipse neu.
- Erstellen Sie das Projekt neu.
Erklärung:
Das Deaktivieren dieser Optionen verhindert, dass Eclipse übermäßige Codeanalyseprüfungen durchführt, die den Indizierungsprozess beeinträchtigen und zu falschen Ergebnissen führen können Semantische Fehler.
Zusätzliche Beobachtungen:
- Das Problem scheint auf den CDT-Index beschränkt zu sein, da Befehlszeilen-Builds mit ndk-build erfolgreich sind.
- Das Entfernen und erneute Hinzufügen von OpenCV4Android-Includes im Abschnitt „Pfade und Symbole“ löst das Problem möglicherweise nicht.
- Das Aufteilen von Zeilen mit ungelösten Symbolen in mehrere Anweisungen als vorübergehende Problemumgehung.
Das obige ist der detaillierte Inhalt vonWarum wird mein Eclipse-Projekt erfolgreich kompiliert, weist aber dennoch semantische Fehler auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!