Intellij IDEA kann keine Klasse in erfolgreich importierter Maven-Abhängigkeit finden

8

Ich versuche, das erste json-einfache Beispiel von dieser Seite Ссылка zu starten mein Projekt.

Ich habe eine Maven-Abhängigkeit in meine pom.xml von dieser Seite hinzugefügt Ссылка

Intellij IDEA sagt, dass alles in Ordnung ist, die Abhängigkeit wurde erfolgreich importiert. Es kann jedoch keine json-einfachen Klassen im Editor finden, die sagen "Kann das Symbol 'JSONObject' nicht auflösen.

Was kann falsch sein? Ich hatte ähnliche Probleme mit dem Hinzufügen anderer Abhängigkeiten, aber ich konnte sie "lösen", indem ich das notwendige Glas herunterlud und es als Abhängigkeit hinzufügte, ohne maven zu verwenden.

Schätzen Sie jede Hilfe

Danke

    
Vadim 16.05.2015, 07:13
quelle

2 Antworten

14

Ich habe auch viele Probleme mit IntelliJ und Abhängigkeiten. Ich werde einige meiner Methoden zur Fehlersuche teilen:

  1. Stellen Sie sicher, dass pom.xml Abhängigkeiten enthält.

Dies ist die allererste Sache, und ich nehme an, Sie haben es bereits getan.

Für den nächsten Schritt können Sie entweder den Reiter maven auf der rechten Seite verwenden:

sieht so aus, wenn Sie darauf klicken:

oder klicken Sie mit der rechten Maustaste auf pom.xml und wählen Sie Maven like so:

  1. Reimport

Es ist schnell und einfach und manchmal ist genau das notwendig.

  1. Generiere Quellen und aktualisiere Ordner

Manchmal wurden die Quellen nicht richtig generiert, dann ist dies der Schlüssel.

  1. Quellen herunterladen

Manchmal macht IntelliJ das nicht automatisch, etwas, das Sie in Settings > Build, Execution, Deployment > Build tools > Maven > Importing ändern und Import Maven projects automativally aktivieren können.

Die Download-Quellen sehen folgendermaßen aus:

Der Einstellungsbutton ist der am weitesten rechts in meinen Beispielbildern des Maven-Tabs.

Last but not least:

Setzen Sie den Cursor auf den roten Teil des Imports, ( import org.json.simple.JSONObject; part) warten Sie, bis die rote Lampe erscheint, und wählen Sie "add to class path".

Wenn alles anders ist, wie es sollte, muss der Klassenpfad mit Ihrem Import aktualisiert werden. IntelliJ tut dies auch nicht immer automatisch.

    
Gemtastic 16.05.2015, 10:02
quelle
1

Ich löse dieses Problem, indem ich

hinzufüge
  

<scope>compile</scope>

zu meiner fehlenden Abhängigkeit. Es scheint, dass compile nicht immer der Standard ist.

Seltsamerweise, während IntelliJ sich beschwerte, konnte Eclipse die Definition finden.

    
Pierre Thibault 20.05.2017 00:34
quelle

Tags und Links