IntelliJ kann keine Deklarationen finden

131

Ich habe IntelliJ vollständig deinstalliert und habe mein Projekt jetzt neu installiert und importiert. Ich habe mit gradle importiert und kann alle Dateien in meinem Projekt sehen. Wenn ich jedoch eine Datei öffne, kann ich mit cmd + click keine Deklaration finden, zu der ich wechseln kann. Ich habe das Java 7 SDK-Setup und kann nicht einmal zur Klassendeklaration in meinem eigenen Projekt gehen. Zu einer Java-Kernklasse gehen wieString oder Listfunktioniert auch nicht. Wie kann ich der IDE ermöglichen, meine Klassen zu finden?

Ich bin auf OSX Yosemite, IntelliJ 2016.1.2 Build 145.972.

Andy
quelle
30
Ist Ihr Quellverzeichnis als Quellroute markiert? Wenn nicht, klicken Sie mit der rechten Maustaste auf ein Verzeichnis mit Java-Klassen und dann: Verzeichnis als -> Quellenstamm
markieren
In meinem Fall musste ich meinen Ressourcenordner a markieren Resources Root.
Genfood
1
Hat auch hier
funktioniert

Antworten:

264

Ich hatte das gleiche Problem und die Lösung von @ AniaG in den Kommentaren hat für mich funktioniert.

  • Rechtsklick src Ordner
  • Markieren Sie Verzeichnis als > Quellenstamm

Geben Sie hier die Bildbeschreibung ein

Thomas
quelle
1
Es gibt keine Option mehr "Verzeichnis markieren als" im Kontextmenü. Verwenden Sie CMD + Umschalt + A, um die Aktion "Verzeichnis als" markieren zu finden
Leo Droidcoder
3
Ich sehe es immer noch als Option in IntelliJ IDEA 2017.1.3
Thomas
6
javasrc
Markieren Sie
Wenn ich dies einstelle, zeigen Fehler das gesamte Projekt. Was ist los mit dir.
JustCode
1
Bei einer Maven-Verzeichnisstruktur musste ich src / main / java als Quellenstamm, src / main / resources als Ressourcenstamm und die Testverzeichnisse als Gegenstücke zu den Testquellen markieren. Ich muss immer meine "Faust des Todes" kontrollieren, wenn mir ein n00b herablassend sagt, dass "die Entwicklung mit Intellij viel schneller ist als mit Eclipse".
Steve Gelman
40

Ich hatte das gleiche Problem und verbrachte fast 15 bis 16 anstrengende Stunden damit, die Idee von 16.3 auf 17.2 zu bereinigen, neu zu erstellen, den Cache ungültig zu machen und zu aktualisieren, alles umsonst. Wir haben ein von Maven verwaltetes Projekt und der Build war früher erfolgreich, konnte aber nicht zwischen Deklaration / Implementierungen navigieren, da Idea die Dateien nicht sehen konnte.

Nachdem ich endlos versucht hatte, dies zu beheben, wurde mir schließlich klar, dass es die IDEA-Einstellungen sind, die alle Kopfschmerzen verursachen. Folgendes habe ich getan (Windows-System):

  1. Beenden Sie die IDE
  2. Alle rekursiv löschen .iml Dateien aus dem Projektverzeichnis del / s / q "C: \ Dev \ trunk \ *. Iml"
  3. Finde und lösche alle .idea Ordner
  4. Löschen Sie den Inhalt der Ordner Caches, Index und LocalHistory unter <user_home>\.IntelliJIdea2017.2\system
  5. Idee öffnen und Projekt importieren ....

VOILAAAAAAAAAAAA ... !! Ich hoffe, das hilft einer armen Seele bei Schmerzen

user8382868
quelle
1
Wo ist .IntelliJIdea2017.2 \ system? Ist das Pfadsystem spezifisch?
Daniel Reina
Ich habe dies für build.gradle.ktsDateien erlebt und das .ideaVerzeichnis und gelöscht . imlDie Projektdatei reichte aus, um die Probleme zu beheben. Bemerkenswert: Dies war die Eröffnung eines Linux-Projekts unter Windows (beide Versionen von IntelliJ waren gleich - 2019.3)
Nathan
Toll!! Unter MaxOS wurde nur der für mich gelöste .idea-Ordner gelöscht (alle .iml-Dateien befanden sich darin).
VadimBelov
18

Ich hatte das gleiche Problem mit der Idee und habe versucht, ein Maven-Projekt zu öffnen, aber die POM-Dateien wurden nicht identifiziert. Also hat ein Rechtsklick auf die POM-Datei und die Auswahl von "Als Maven-Projekt hinzufügen" die ganze Magie für mich bewirkt :)

Pavithra
quelle
1
ebenfalls aber für mich war es "reimport"
jsharp
Gleich! Kurz nach "Als Maven-Projekt hinzufügen" musste ich erneut mit der rechten Maustaste auf pom.xml -> Maven -> Projekt neu laden klicken. und es begann zu navigieren :)
QauseenMZ
12

Ich hatte ähnliche Probleme in meinem IntelliJ mvn-Projekt. Pom.xml wurde nicht erkannt. Was für mich funktioniert hat, war mit der rechten Maustaste auf die Datei pom.xml zu klicken und sie dann als Maven-Projekt hinzuzufügen.

Addy
quelle
1
Gleich! Kurz nach "Als Maven-Projekt hinzufügen" musste ich erneut mit der rechten Maustaste auf pom.xml -> Maven -> Projekt neu laden klicken. und es begann zu navigieren :)
QauseenMZ
9

Hatte das gleiche Problem. Aber nur nach meinen eigenen Methoden.
Einfach behoben, indem der Cache ungültig gemacht wurde: (Datei-> Caches ungültig machen / Neustart)

notihs
quelle
6

Wenn auf dem Symbol der Java-Dateien ein roter Kreis angezeigt wird und eine Warnung wie "Deklaration kann nicht gefunden werden" angezeigt wird. Dann können Sie unten etwas tun:

  1. Klicken Sie mit der rechten Maustaste auf den Stammordner Ihres Projekts / Moduls.
  2. Verzeichnis als -> Ausgeschlossen markieren.

Geben Sie hier die Bildbeschreibung ein

Für mich geht das. in Windows 7, Intellij 2016.1.1

Vic.Liu
quelle
5

Ihre Quellordner, in denen sich Ihre Symbole befinden (Klassen), müssen als "Inhaltsstamm" konfiguriert werden.

  • Offene Projektstruktur: #;
  • Klicken Sie auf Module
  • Sie können Ihren Inhaltsstamm (Quellen, Tests, Ressourcen usw.) für jedes Modul konfigurieren, zu dem Sie navigieren möchten.

Sobald Sie fertig sind, sollten Sie in der Lage sein, zu Ihren Symbolen zu navigieren.

sujeet
quelle
5

In den meisten Fällen gab es ein Problem beim Erstellen des Cache der IDE oder ähnliches.

Höchstwahrscheinlich File -> Invalidate Caches / Restartwird dieses Problem behoben. Lassen Sie die IDE das Caching abschließen.

SpiXel
quelle
3

Ich habe dieses cannot find declaration to go toProblem einmal in meinem Maven-Projekt gefunden. Der Grund dafür war nur, dass eines der Unterprojekte in meinem Projekt nicht korrekt als Maven-Projekt importiert wurde.

Figo Wang
quelle
3

Klicken Sie mit der rechten Maustaste auf Ihren src-Ordner und wählen Sie die Option "Verzeichnis als" markieren - "Quellstamm". Klicken Sie dann erneut mit der rechten Maustaste auf Ihr Projekt und wählen Sie "Code neu formatieren" (wählen Sie auch unter diesem Code den Bereinigungscode) funktioniert gut.

Aman Agrawal
quelle
2

Stellen Sie sicher, dass das Verzeichnis, das Ihre kompilierten Klassen und Bibliotheken enthält, als Quellstamm markiert ist.

Anand
quelle
2

In meinem Fall habe ich gerade mein IntelliJ auf Ultimate 2018.2 aktualisiert und alle meine Projekte können plötzlich die Implementierungen und die 'src'-Ordner nicht mehr finden - es stellte sich heraus, dass IntelliJ den Projekttyp entfernt hat (z. B. Maven).

Was ich getan habe ist:

Klicken Sie mit der rechten Maustaste auf das Stammprojekt> Framework-Unterstützung hinzufügen ...> Suchen Sie nach Maven (in meinem Fall)> Warten Sie, bis Sie erneut indizieren> Dann funktionierte es erneut.


UPDATE 2:

Ich habe dies immer festgestellt, wenn ich IntelliJ (2019.1.1 Ultimate Edition) aktualisiere. Klicken Sie einfach auf die Schaltfläche "Aktualisieren" auf der Registerkarte "Maven" und Ihr aktuelles Projekt sollte als "Maven-Projekt" neu indiziert werden:
Geben Sie hier die Bildbeschreibung ein

pvma
quelle
2

Einer der Gründe kann sein, dass die Datei pom.xml (oder die Gradle-Datei) nicht erkannt werden kann, weshalb sie nicht als Maven-Projekt (oder Gradle) festgelegt werden kann.

Sie können es manuell als Maven- (oder Gradle-) Projekt einrichten, indem Sie Ihre pom.xml- (oder Gradle-) Datei auswählen.

parikhparth23
quelle
1

IDEA ignoriert möglicherweise einige Ihrer Maven-Abhängigkeitsdateien. Der Knoten "Externe Bibliotheken" in Ihrer Projektstruktur ist möglicherweise leer oder unvollständig.

Gehe zu:

  1. IntelliJ -> Einstellungen
  2. Suchen Sie nach Maven [auf der linken Registerkarte] -> Ignorierte Dateien
  3. Überprüfen Sie, ob auf der rechten Seite ein Pfad vorhanden ist, der aktiviert (ignoriert) ist, und deaktivieren Sie diesen Kontrollkästchen.Geben Sie hier die Bildbeschreibung ein
mein Schlüssel
quelle
Sie können dies auch auf der Registerkarte Maven ändern. Die ignorierten Module werden ausgegraut angezeigt.
Def_Os
1

Kam auf das gleiche Problem und in meinem Fall (Java-Projekt) musste ich alle abhängigen Gläser in den Bibliotheksabschnitt des Projekts aufnehmen.

Datei -> Projektstruktur -> Bibliotheken

Ich musste meine projektabhängigen Gläser im obigen Abschnitt hinzufügen (zum Beispiel project / web / lib /). Danach löste sich alles gut auf. Ich hoffe das wird jemandem helfen.

Ricky Boy
quelle
0

In meinem Fall habe ich ein Gradle-Projekt mit Teilprojekten verwendet. Der Grund, warum IntelliJ keine Deklarationen finden konnte, war, dass die Teilprojekte nicht erstellt wurden.

Nachdem ich untersucht hatte, warum Teilprojekte nicht erstellt wurden, stellte ich fest, dass die Verwendung von "Auto-Import" die Teilprojekte beschädigte.

Nachdem ich das Projekt build.gradle ohne automatischen Import importiert hatte , funktionierte es für mich.

Daniel Reina
quelle
0

Für was es wert ist, ist es in Pycharm: Klicken Sie mit der rechten Maustaste auf den Stammordner-> Verzeichnis als- markieren> Quellenstamm

Mithunpaul
quelle
0

Gleiches Problem für Python Project !!!

Ich habe versucht, ein sauberes neues Intellij-Projekt zu erstellen und alles aktualisiert. Versuchte verschiedene virtuelle Umgebungen, aber nichts hat geklappt.

BIS ich das Python-Plugin deinstalliert + IntelliJ neu starten + Python-Plugin installieren + IntelliJ erneut starten. Ich bin nicht sicher, ob dies eine "echte" Lösung ist, aber es hat mein Problem gelöst.

Vielleicht können Sie etwas Vertrautes für Java "Plugin" / JDK ausprobieren?

zypro
quelle
0

In meinem Fall hat keines der oben genannten Probleme geholfen. Nur ein Upgrade von Intellij von 2017.3 auf 2018.2 hat geholfen.

Versuchen Sie nicht 2018.1, da es einen Fehler gab, bei dem das Popup "Dateien suchen" nicht angezeigt wurde.

Pratik Khadloya
quelle
0

Für jemanden, bei dem die oben genannte Lösung nicht funktioniert hat.

Für gradle,

Datei -> Projektstruktur

Klicken Sie unter Projekteinstellungen auf Projekt

Aktualisieren Sie die Projektsprachenstufe als Module, private Methoden in Schnittstellen usw.

Klicken Sie auf OK und importieren Sie die Gradle-Einstellungen

Projektstruktur

Ali Akbar
quelle
0

Irgendwie habe ich meine Maven-Module so eingestellt, dass sie ignoriert werden. Klicken Sie im Maven-Werkzeugfenster mit der rechten Maustaste und wählen Sie "Projekte nicht mehr signieren".

Dann werden automatisch alle Verzeichnisse ausgewählt.

Geben Sie hier die Bildbeschreibung ein

Jim
quelle
0

Auch ich habe mich diesem Problem gestellt. Ich habe die hier genannten Lösungen ausprobiert. Das Problem scheint nicht mit dem Quellordner zu sein.

Bei mir trat das Problem auf, als ich eine neue Version von IntelliJ installierte und die Version 2019 auf die Version 2020 verschoben habe. Das Projekt wurde in der neuen Version geöffnet, aber die Erklärungen fehlten.

Ich habe das behoben durch:

 - File>Project Structure.  
 - Under Project Settings go to Modules. Here you should see the different project folders, for me it was not there. 
 - Click the + button on top and click Import Module.
 - Select the root pom.xml and wait for the indexing to complete.

Nach Abschluss der Indizierung funktionierten alle Deklarationen.

Vishal Vijayan
quelle
-1

Wenn Sie IntelliJ noch nicht kennen, kann es einige Zeit dauern, bis Sie IntelliJ verstanden haben. Wenn ein Code in Java geschrieben wurde und das Gurken-Framework verwendet, haben wir zwei Hauptdateien -

  1. Feature-Datei
  2. Schrittdefinitionsdatei

Ziel: Was haben wir in der Feature-Datei definiert? Es muss in Richtung Schrittdefinitionsdatei navigiert werden. (Strg + Klick) Hinweis: Die Feature-Datei muss auch einige bunte Gurken-Schlüsselwörter enthalten, wenn die folgenden Schritte nicht ausgeführt werden

Lösung: Gehen Sie zu Datei >> Einstellungen >> Plugins - suchen Sie nach "Cucumber for Java". Fügen Sie das Plugin hinzu. Starten Sie IntelliJ neu, es wird sicher funktionieren.

Deeksha Sharma
quelle
Cucumber for Java wird mit IntelliJ
Dustinevan