Dieses Problem tritt zeitweise bei verschiedenen Bibliotheken und verschiedenen Projekten auf. Beim Versuch, eine Bibliothek zu importieren, wird das Paket erkannt, der Klassenname kann jedoch nicht aufgelöst werden.
Wenn in der Importanweisung right-click -> Goto -> the package's declaration
I alle dekompilierten Klassen im Seitenbereich angezeigt werden - einschließlich der von mir benötigten - Wenn ich versuche, die Importanweisung automatisch zu vervollständigen, stelle ich fest, dass die benötigte Klasse nicht in der Klasse enthalten ist Dropdown-Liste.
Ich habe bereits versucht, Caches ungültig zu machen, funktioniert nicht. Ich kann keine Klassenkonflikte finden. In meinem Klassenpfad befindet sich keine andere JAR-Datei mit demselben Paketnamen. Ich kann diese Klasse in andere Projekte importieren.
Bitte sehen Sie Screenshots:
Hat jemand eine Ahnung?
quelle
Antworten:
Sie können versuchen, den Cache ungültig zu machen und Intellij neu zu starten. In vielen Fällen hilft dies.
Datei -> Caches ungültig machen / neu starten
quelle
Dafür kann es mehrere Gründe geben. In meinem Fall war es ein falsches Quellstammproblem. Ungültige Caches funktionierten nicht mit anderen Lösungen zusammen.
Überprüfen Sie die Wurzeln Ihrer Modulquelle.
Projektstruktur ( Ctrl+ Alt+ Shift+ S).
Module
Wählen Sie Ihr Problemmodul aus.
Ändern Sie die Registerkarte oben im Fenster "Quellen".
Entfernen Sie unerwünschte Quellwurzeln. Behalten Sie eine und fügen Sie src hinzu und testen Sie die Quellwurzeln in dieser Wurzel.
quelle
IntelliJ hat Probleme beim Auflösen der Abhängigkeiten. Versuche Folgendes:
quelle
Überprüfen Sie Ihre Modulabhängigkeiten.
quelle
Führen Sie diesen Befehl in Ihrer Projektkonsole aus:
Getan. Hatte dieses Problem viele Male. Versuchte 'Cache & Restart ungültig machen' und alle anderen Lösungen. Das Ausführen dieses Befehls funktioniert für mich perfekt. Ich verwende derzeit IntelliJ 2019.2, aber dies ist auch in früheren Versionen passiert und die Lösung hat auch funktioniert.
quelle
Ich hatte ein ähnliches Problem. Mikes Kommentar half mir, mich in die Richtung zu bewegen, um es zu lösen.
Obwohl die erforderliche Bibliothek auch in meinem Projekt Teil des Moduls war, musste der Umfang geändert werden. In der Modulabhängigkeit habe ich den Bereich auf " Kompilieren " anstatt auf " Testen " geändert und es funktioniert jetzt gut für mich.
quelle
Datei -> Caches ungültig machen / Das Projekt neu starten oder neu erstellen hat bei mir nicht funktioniert.
Für mein Gradle-Projekt funktionierte "Alle Gradle-Projekte aktualisieren" auf der Registerkarte "Gradle" in der oberen rechten Ecke von IntelliJ v2017 mithilfe der unten gezeigten gelb markierten Schaltfläche:
quelle
Ich fand die folgende Antwort von @ jossef-harush und @ matt-leidholm über einen anderen Link nützlich
Integer
zum Beispiel) und drücken Sie ALT+ ENTER(oder klicken Sie auf das Glühbirnen-Symbol).Setup JDK
aus dem Menü "Absichten"Configure
JDK
Pfad falsch (gezeigt/opt/jdk1.7.0_51
statt/opt/jdk1.7.0_65
)JDK
Pfadquelle
Datei -> Caches ungültig machen / Projekt neu starten und erstellen
quelle
Klicken Sie mit der rechten Maustaste auf die Datei pom.xml, gehen Sie zu Maven und klicken Sie auf Reimport. Ich hatte ein ähnliches Problem und das hat bei mir funktioniert.
quelle
Ich habe versucht, Caches ungültig zu machen und neu zu starten, aber das einzige, was für mich funktioniert hat, war, das .idea-Verzeichnis vollständig zu löschen und dann ein neues Projekt von Grund auf neu zu erstellen.
quelle
Ich habe diesen Fehler auch mehrmals erhalten, wenn ich versuche, ein neues Java-Projekt zu erstellen.
Unten ist der Schritt, wie ich dieses dumme Problem bekam.
src/main/java
.net.gongmingqm10.sketch
.gradle wrapper
,gradle idea
die gradle Sachen für das Projekt zu bauen.build.gradle
Datei ein undgradle build
importieren Sie das Projekt erneut.User.java
undSchool.java
im vorhandenen Paketnet.gongmingqm10.sketch
Lösung:
Erstellen Sie zuerst das Projekt und markieren Sie main / java als Quellstamm. Erstellen Sie ein neues Verzeichnis mit demselben Namen
net.gongmingqm10.sketch
. Verschieben Sie alle Dateien von den alten störenden Paketen in das neue Paket.Ursache:
Verzeichnisbaum des Quellcodes
Wie Sie vom Baum sehen können. Ich habe ein Verzeichnis mit dem Namen
net.gongmingqm10.sketch
. Was wir aber wirklich brauchen, ist das 3-Ebenen-Verzeichnis: net-> gongmingqm10-> SkizzeBevor ich mein Projekt in Intellij fertig erstelle, erstelle ich ein neues Verzeichnis mit dem Namen
net.gongmingqm19.sketch
, das mir ein echtes Verzeichnis mit dem Namen gibtnet.gongmingqm10.sketch
.Wenn wir versuchen, es zu importieren. Offensichtlich, wie kann intellij importieren Sie die Datei unter dem weired Verzeichnis mit dem Namen
a.b.c
.quelle
@Anton Dozortsev Ich wurde durch ein ähnliches Verhalten verrückt gemacht; Am Ende habe ich die IDE einige Male neu installiert und das Problem erst überwunden, nachdem ich die IDEA-App, alle Caches, Einstellungen usw. entfernt hatte.
Ich habe in der Zwischenzeit alle möglichen Schritte ausprobiert (wie Neustarts, Ungültigmachungen, Löschen
.idea
und*.iml
Dateien und andere).Es stellte sich heraus, dass das Problem auf die
idea.max.intellisense.filesize
Einstellung von IntelliJ zurückzuführen war . Ich hatte es auf 100 KB eingestellt, was kleiner als die Größe meiner Abhängigkeit war, was dazu führte, dass IntelliJ es als unbekannt anzeigte, genau wie in Ihrem Screenshot.Fix:
Klicken Sie auf Hilfe -> Benutzerdefinierte Eigenschaften bearbeiten
Setzen Sie die Eigenschaft auf einen größeren Wert. Der Standardwert ist 2500 KB
idea.max.intellisense.filesize=2500
quelle
Hatte das gleiche Problem, bis ich bemerkte, dass der src- Ordner als Root-Quelle anstelle von Java markiert war ! Das Ändern auf nur Java (src / main / java) als Quellstamm löste mein Problem
quelle
Bitte versuchen Sie Datei-> Synchronisieren. Schließen Sie dann IntelliJ und öffnen Sie es erneut, bevor Sie es ungültig machen.
Einmal habe ich neu gestartet. Ich hätte ungültig gemacht, aber die Synchronisierung löschte alles nach dem Neustart.
quelle
Einfacher Neustart hat bei mir funktioniert.
Ich würde vorschlagen, zuerst einen Neustart durchzuführen und dann den Cache ungültig zu machen.
PS: Wenn Sie die Systemcaches bereinigen, wird der lokale Verlauf gelöscht.
quelle
Ich hatte ein ähnliches Problem mit meinem importierten Maven-Projekt. In einem Modul kann das Symbol beim Import für einen Teil des anderen Moduls nicht aufgelöst werden (ja, ein Teil dieses Moduls kann aufgelöst werden).
Ich habe "Maven Home Directory" in eine neuere Version geändert, um mein Problem zu beheben.
Update: Gut für 1 Stunde, zurück in den defekten Status ...
quelle
Ich habe die Ursache gefunden!
In meinem Fall füge ich eine JAR-Datei hinzu, die eine Java-Quelldatei enthält, aber ich denke, die Java-Quelle ist fehlerhaft. In der Intellij Idea-Abhängigkeitsbibliothek wird die Quellautomatik automatisch hinzugefügt. Im Editor ist der Import also SCHLECHT. Remove Entfernen Sie NUR den Quellcode in ". Projektstruktur "->" Bibliothek ", es funktioniert bei mir.
quelle
Was es für mich getan hat, ist, die Paketdatei im .idea-Ordner zu bearbeiten, da ich versehentlich Quellen zu dieser JAR-Bibliothek hinzugefügt habe und Android es nicht beheben konnte, indem die Quellzeile gelöscht wurde, wie im Fehler der b / m-Bildbibliothek markiert .
Dann bauen Sie das Problem mit Gradle und BAM wieder auf.
quelle
Ich hatte das gleiche Problem und der Grund dafür war die falsche Kennzeichnung der Projektquellen.
Ich habe den Stamminhalt manuell erstellt und nicht bemerkt, dass der
src/main/test
Ordner alsSources
statt markiert wurdeTests
. Das ist also, warum sich meine Testklassen angenommen alle ihre Testbibliotheken haben (JUnit
,Mockito
usw.) mit dem Umfang von Compile, nicht - Test.Sobald ich
src/main/test
als Tests markiert und das Modul neu aufgebaut hatte, waren alle Fehler verschwunden.quelle
Ich hatte dies kürzlich beim Versuch, Intellij für die Arbeit mit NiFi zu verwenden. Es stellte sich heraus, dass für NiFi Maven> = 3.1.0 erforderlich ist und die Version, mit der ich ausgecheckt hatte (ich glaube meine Standardeinstellung), 3.0.5 war. Durch das Aktualisieren der Maven-Version für das Projekt wurde das Problem behoben. In einigen Fällen kann eine Fehlausrichtung der Maven-Version eine Frage sein ... Ich denke, es ist ziemlich ungewöhnlich, aber wenn Sie so weit im Thread sind, haben Sie wahrscheinlich eine ungewöhnliches Problem :)
quelle
Dasselbe Problem. Wenn diese Methoden nicht funktionieren. Sie können versuchen, die Bibliothek aus dem lokalen Maven-Repository zu löschen und erneut in pom zu importieren.
Endlich ist es gut für mich.
quelle
file
->Project Structure
->Modules
, finden Sie das Modul mit Problemen, klicken Sie darauf und wählen Sie dieDependencies
Registerkarte auf der rechten Seite. Klicken Sie auf das grüne Pluszeichen und versuchen Sie, das Glas oder die Bibliotheken hinzuzufügen, die das Problem verursachen. Das ist für mich in Ordnung.quelle
Nach einer langen Suche stellte ich fest, dass eine Abhängigkeit auf meinem Computer in einem Maven-Projekt irgendwie beschädigt war. Das Seltsame war, dass die Abhängigkeit im kompilierten Java-Code immer noch korrekt funktionierte. Als ich jedoch meinen Maven-Abhängigkeits-Cache bereinigte und neu erstellte, verschwand das Problem und IntelliJ erkannte das Paket. Sie können dies tun, indem Sie Folgendes ausführen:
Interessanterweise war die Quelle meines Problems daher nicht IntelliJ, sondern Maven selbst.
quelle
Nichts, was ich oben versucht habe, hat für mich funktioniert (nicht, dass ich jeden Vorschlag ausprobiert habe). Der Trick bestand schließlich darin, die Klasse umzubenennen. Ich habe dem Klassennamen und dem Dateinamen nur eine 2 hinzugefügt. Dann habe ich alle Referenzen manuell aufgelöst. (Da sie nicht erkannt wurden, wurden die Referenzen beim Refactoring nicht automatisch geändert.)
Nachdem die "2-Version" überall glücklich gelöst war, konnte ich die 2 umgestalten und aus der Klasse und Datei entfernen, und alles war dann so, wie es sein sollte.
quelle
In meinem Fall bestand die Lösung darin, das Projekt als Maven-Projekt hinzuzufügen, abgesehen von der Tatsache, dass ich es als Maven-Projekt importiert habe: P.
Gehen Sie zu pom.xml -> Rechtsklick -> Als Maven-Projekt hinzufügen
quelle
Intelli iDEA verursacht diese dummen Probleme @ mal. Gehen Sie einfach zu pom.xml, klicken Sie mit der rechten Maustaste und machen Sie -> Maven -> Reimport.
Dies sollte das Problem lösen.
quelle
Für die Ultimate Edition 2020.1.4 musste ich Folgendes tun
View -> Maven -> Generate Sources and Update Folders For all Projects
Das Problem für mich war, dass die Bibliotheken nicht
mvn -U clean install
vom Terminal aus gefüllt wurden.quelle
Vermissen
io
? Versuchen Sie esimport org.openide.util.io.ImageUtilities
.quelle