Ich habe ein Maven-Projekt in STS importiert, wenn ich ein Update-Update-Projekt ausführe, das ich erhalte:
"Updating Maven Project". Unsupported IClasspathEntry kind=4
Gibt es eine Problemumgehung dafür?
Ich habe ein Maven-Projekt in STS importiert, wenn ich ein Update-Update-Projekt ausführe, das ich erhalte:
"Updating Maven Project". Unsupported IClasspathEntry kind=4
Gibt es eine Problemumgehung dafür?
Antworten:
Dieses Problem wurde in m2e 1.5.0 behoben, das für Eclipse Kepler (4.3) und Luna (4.4) verfügbar ist.
Weitere Informationen finden Sie unter https://bugs.eclipse.org/bugs/show_bug.cgi?id=374332#c14
Das Problem wird durch die Tatsache verursacht, dass STS (die Spring IDE / Eclipse) sowie Eclipse und andere Eclipse-basierte IDEs das Plugin m2e (clipse) verwenden, aber dass Eclipse: Eclipse wahrscheinlich für das Projekt ausgeführt wurde. Wenn m2e auf einen "var" .classpath-Eintrag stößt, wird dieser Fehler ausgegeben.
Die Update-Sites werden unter der folgenden URL angegeben:
http://eclipse.org/m2e/m2e-downloads.html
Wenn Sie m2e 1.5.0 aus irgendeinem Grund nicht verwenden können, dann:
Deaktivieren Sie die Maven-Natur für das Projekt (über das Kontextmenü).
Ausführen mvn eclipse:clean
(während Ihr Projekt in STS / Eclipse geöffnet ist ). Abhängig vom Zeitpunkt müssen Sie möglicherweise ein oder zwei Aktualisierungen des Projekts durchführen, bevor Sie die Maven-Natur wieder aktivieren können. Sie sollten in der Lage sein zu sehen, dass Ihr Projekt seine Maven-Natur verloren hat. (Das eclipse:clean
Ziel löscht nur die .project
, .classpath
und .settings/
Dateien / Verzeichnisse. Sie können auch nur die Dateien entfernen (wieder , während das Projekt geöffnet ist ) statt laufen mvn eclipse:clean
.)
Aktivieren Sie die Maven-Natur wieder.
(Meistens können Sie dazu im Paket-Explorer-Bereich mit der rechten Maustaste auf das betreffende Projekt klicken und dann "Konfigurieren" -> "In Maven-Projekt konvertieren" auswählen.)
classpathentry
mit dem kind
Attribut set manuell aus der .classpath-Datei zu entfernen var
.
Klicken Sie mit der rechten Maustaste auf Ihr Projekt und wählen Sie Maven -> Maven Nature entfernen.
Öffnen Sie Ihr Terminal, gehen Sie zu Ihrem Projektordner und tun Sie es mvn eclipse:clean
Klicken Sie mit der rechten Maustaste auf Ihr Projekt und wählen Sie "Konfigurieren -> In Maven-Projekt konvertieren".
Jetzt ist "Nicht unterstützte IClasspathEntry-Art = 4 Eclipse Scala" verschwunden.
mvn eclipse:clean
nicht mvn clean
(ich habe mich täuschen lassen , weil ich nicht genau aufgepasst habe).
Manchmal funktioniert sogar das erneute Importieren des Maven-Projekts nicht. Das korrekte Aktualisieren des Projekts in Eclipse ist kein deterministischer Prozess. Das einzige 100% ausfallsichere Verfahren, das ich gefunden habe, ist:
mvn eclipse:clean
neu, drücke die Daumen und bete dreimal.mvn eclipse:clean
, importieren Sie die Aktualisierung erneut, beten Sie und wenden Sie die Kraft an .Stellen Sie sicher, dass die Version des von Ihnen ausgeführten m2e-Plugins (clipse) mindestens 1.1.0 ist
Maven-Projekt schließen - Rechtsklick auf "Projekt schließen"
oder
Hast du es versucht:
Alle anderen Antworten sehen. Ich habe für mich einen einfacheren Weg gefunden.
Ich habe gerade alle Zeilen im .classpath (Bearbeitung mit Eclipse) entfernt, die eine var enthalten, und habe maven -> update project ohne Fehler verwendet.
Dieser Fehler wird auch ausgelöst, wenn der Aktualisierungsbefehl für ein Projekt verwendet wird, das für die Codeabdeckung mit Clover instrumentiert ist.
So lösen Sie in diesem Szenario: Deaktivieren Sie die Zuordnung der Projektordner, die Sie aktualisieren möchten. Führen Sie das Maven-Update und dann das Instrument für die Codeabdeckung erneut aus.
Ich habe Marcos Schritte ausprobiert, aber kein Glück. Wenn Sie stattdessen nur das neueste m2e-Plugin über den von ihm bereitgestellten Link erhalten und nacheinander mit der rechten Maustaste auf jedes Projekt klicken -> Maven -> Abhängigkeiten aktualisieren - wird der Fehler weiterhin angezeigt, das Problem ist jedoch behoben. Das heißt, die Warnungen verschwinden in der Markierungsansicht. Dieses Problem trat auf, nachdem ich einige Projekte in die SpringSource Tool Suite (STS) importiert hatte. Als ich zu meiner Eclipse Juno-Installation zurückkehrte, wurden die Warnungen angezeigt. Als ich sah, dass ich m2e 1.1 bereits installiert hatte, versuchte ich die Schritte von Marco ohne Erfolg. Das Erhalten der neuesten Version hat es jedoch behoben.
Ich konnte mvn eclipse: clean etc nicht für Kepler verwenden.
Ich habe jedoch das Erstellen und Erweitern von Variablen dahingehend geändert, dass nur externe Jars in meinem Eclipse-Klassenpfad verwendet werden. Dies spiegelte sich in keinem var in meinem .classpath wider.
Dies hat das Problem behoben. Ich konnte ein Maven-Update durchführen.
Dieses Problem ( https://bugs.eclipse.org/394042 ) wurde in m2e 1.5.0 behoben, das für Eclipse Kepler und Luna in diesem p2-Repo verfügbar ist:
http://download.eclipse.org/technology/m2e/releases/1.5
Wenn Sie auch m2e-wtp verwenden, müssen Sie auch m2e-wtp 1.1.0 installieren:
Das Upgrade von Kepler auf Luna hat für mich funktioniert.
Ich hatte gerade einige Komponenten für die Unterstützung von Java 1.8 hinzugefügt. Es scheint, dass sie nicht so kompatibel waren, wie ich es gerne hätte, oder dass ich die falschen gemischt habe. Es hat wirklich viele Probleme verursacht. Beim Versuch, das System zu aktualisieren, wurden Fehler gemeldet, da einige Abhängigkeiten nicht erfüllt werden konnten. Maven-Upgrades haben nicht funktioniert. Versuchte viele Dinge.
Wenn es also keinen Grund gibt, das Upgrade zu vermeiden, fügen Sie das Luna-Repository einfach zu verfügbaren Software-Sites (Luna http://download.eclipse.org/releases/luna/ ) hinzu und "nach Updates suchen ". Es ist besser, alle Komponenten mit derselben Version zu haben, und es gibt einige nette neue Funktionen.
Ich habe alle hier genannten Schritte und ähnliche Fragen ausprobiert, konnte dieses Problem jedoch nicht lösen. Ich konnte weder ein Problem lösen noch meine m2eclipse aktualisieren. Also habe ich Eclipse Luna installiert und es hat mein Problem gelöst ... obwohl es bedeutet, dass ich ungefähr 45 Minuten aufwenden musste, um die gesamte Umgebung in meinem Arbeitsbereich zu konfigurieren.
Ich verwende Eclipse 4.3.2 (Kepler) mit M2E 1.4.x und habe dieses Problem mehrmals überlegt!
In meinem Fall generiert der Befehl "mvn eclipse: eclipse" auch die Konfiguration von Checkstyle, PMD und Findbugs, sodass "mvn eclipse: clean" mir nicht hilft, da alle diese Konfigurationsdateien erneut gelöscht werden.
Die beste Lösung für mich war, alle ".classpath" -Dateien zu löschen:
find . -name ".classpath" -delete
und importieren Sie das Projekt anschließend in Eclipse.
Vor dem Importieren des Projekts sollte es in das Eclipse-Projekt mvn eclipse konvertiert werden: eclipse Dann habe ich den folgenden Fehler gefunden. Ein interner Fehler ist aufgetreten während: "Importieren von Maven-Projekten" .Unterstützte IClasspathEntry-Art = 4
Wo ist der Wert kind = "var", den M2E nicht erkennt und daher den Fehler auslöst.
Geben Sie dies jetzt ein. MVN Eclipse: sauber
Aktualisieren Sie nun das Projekt in Eclipse oder importieren Sie es erneut.