Ich versuche mit Spring Data und Neo4j zu arbeiten . Ich habe zunächst versucht, diesem Leitfaden zu folgen , auf den die Hauptseite verweist. Insbesondere habe ich meine pom.xml aus der "Hallo Welt!" Beispieldatei . Hier ist ein Ausschnitt aus meiner pom.xml für das Plugin, das die Probleme verursacht ...
<plugin>
<!-- Required to resolve aspectj-enhanced class features -->
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.0</version>
<configuration>
<outxml>true</outxml>
<aspectLibraries>
<aspectLibrary>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</aspectLibrary>
<aspectLibrary>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-neo4j</artifactId>
</aspectLibrary>
</aspectLibraries>
<source>1.6</source>
<target>1.6</target>
</configuration>
<executions>
<!-- ERROR HERE IN ECLIPSE SEE BELOW FOR FULL MESSAGE -->
<execution>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>${aspectj.version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjtools</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
</plugin>
Der Fehler, den ich sehe, ist:
Multiple annotations found at this line:
- Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:compile (execution: default, phase: process-classes)
- Plugin execution not covered by lifecycle configuration: org.codehaus.mojo:aspectj-maven-plugin:1.0:test-compile (execution: default, phase: process-classes)
Ich verwende Eclipse 3.6.2 und m2e 0.13. Ich bin kein Maven-Experte, daher sollten Sie Ihre Antworten nach Möglichkeit sehr erläutern.
Ich habe auch m2e 1.0.0 über diese Update-Site ausprobiert und erhalte immer noch den gleichen Fehler.
eclipse
maven
spring-data
m2eclipse
Andrew White
quelle
quelle
Antworten:
In meinem Fall eines ähnlichen Problems funktionierte es einfach, nachdem ich Andrews Vorschlag für das Update verwendet hatte, nachdem ich das <pluginManagement> -Tag in die betreffende pom.xml eingeführt hatte. Dieser Fehler ist anscheinend auf ein fehlendes <pluginManagement> -Tag zurückzuführen. Um die Ausnahmen in Eclipse zu vermeiden, müssen einfach alle Plugin-Tags in ein <pluginManagement> -Tag eingeschlossen werden, wie folgt :
Sobald diese Struktur vorhanden ist, verschwindet der Fehler.
quelle
pluginManagement
, sondern nur nachbuild/plugins
. In der Maven-Welt gibt es einen Unterschied zwischen den beiden - ersteres definiert "Wenn Sie dieses Plugin verwenden, ist hier die zu verwendende Konfiguration", während letzteres "dieses Plugin verwenden" angibt. Siehe diesen Beitrag und seine beiden wichtigsten Antworten.Was für ein Chaos. Ich erinnere mich nicht, wo ich das gefunden habe, aber ich musste Folgendes hinzufügen, damit M2Eclipse glücklich wird. Noch trauriger ist, dass es nicht gerade leicht zu verstehen ist, warum dieses Tag benötigt wird.
Es gab eine Reihe anderer Probleme mit dem M2Eclipse-Plug-In, die mit Spring Data einfach nicht funktionierten. Am Ende habe ich M2Eclipse zugunsten des Apache Eclipse-Plug- Ins deaktiviert .
quelle
In Eclipse Luna 4.4.0 können Sie diesen Fehler in den Einstellungen ignorieren
Fenster > Einstellungen > Maven > Fehler / Warnungen > Plugin-Ausführung, die nicht von der Lebenszykluskonfiguration abgedeckt wird . Wählen Sie Ignorieren / Warnung / Fehler wie gewünscht.
In der Schnellkorrektur (Strg + 1) für diesen Fehler können Sie das Ziel als in Eclipse-Build in den Eclipse-Einstellungen ignoriert ignorieren (experimentell).
Dies ist ein sauberer Weg, da er Ihre nicht verändert
pom.xml
.Sie müssen ein Maven > Update-Projekt ausführen , um den gleichen Fehler auch in jedem anderen Projekt zu beheben.
In STS (Spring-Tool-Suite) können Sie diesen Fehler in den Einstellungen ignorieren
Fenster> Einstellungen> Maven> Fehler / Warnungen> Plugin-Ausführung, die nicht durch die Lebenszykluskonfiguration abgedeckt ist. Wählen Sie als Wunsch Ignorieren / Warnung / Fehler. Dann. Klicken Sie mit der rechten Maustaste auf das Projekt, klicken Sie auf Maven und aktualisieren Sie das Projekt. Der Fehler wird dann behoben.
quelle
Lösungsvorschlag aus der Eclipse m2e-Dokumentation :
Verwenden Sie die Schnellkorrektur für den Fehler in pom.xml und wählen Sie
Permanently mark goal run in pom.xml as ignored in Eclipse build
- dies generiert den erforderlichen Boilerplate-Code für Sie.Um Eclipse anzuweisen, Ihr Plugin während des
<ignore/>
Builds auszuführen, ersetzen Sie einfach das Tag durch das<execute/>
Tag in der generierten Konfiguration:Alternativ können Sie Eclipse anweisen, das Plugin auch für inkrementelle Builds auszuführen:
quelle
<runOnIncremental>false|true</runOnIncremental>
innerhalb des Execute-Tags hinzufügen , damit Eclipse dieses Maven-Plugin bei inkrementellen Builds aufruft.Permanently mark goal run in eclipse preferences
und <ignore> in <clecute> unter Eclipse-Einstellungen> Maven> Lifecycle Mappings> Metadaten für geöffnete Workspace Lifecycle Mappings ändern können .Siehe https://www.eclipse.org/m2e/documentation/m2e-execution-not-covered.html .
quelle
m2e 0.13 führt einen m2e-Anschluss und einen m2e-Marktplatz ein , um die m2e-Funktionen zu erweitern. Es ist wie im alten m2e-extras-Repository.
Sie können auf den m2e-Marktplatz über die Einstellungen zugreifen: Einstellungen> Maven> Ermittlung > Katalog öffnen . Durch die Installation der WTP-Integration wurden die meisten Plugin-Probleme für mich gelöst.
quelle
Ändern Sie die Maven-Einstellungen für die Plugin-Ausführung von "Fehler" in "Ignorieren"
quelle
Beachten Sie, dass die M2Eclipse (m2e) -Version 1.7.0, die im heutigen Eclipse Neon-Release-Zug verfügbar ist, eine neue Syntax zum Festlegen von Metadaten für die Lebenszykluszuordnung unterstützt. Infolgedessen Boilerplate wie dieses (hier fordern wir m2e auf, das Ziel zu ignorieren):
kann durch eine einzelne Zeile im Ausführungsknoten des Plugins ersetzt werden:
Weitere Informationen finden Sie in den Versionshinweisen.
quelle
Als Ergänzung zu den vorherigen Antworten gibt es eine Problemumgehung, die ich gerade entdeckt habe, wenn Sie nicht alle diese Boilerplates zu Ihrem Projekt-POM hinzufügen können oder wollen. Wenn Sie an folgendem Ort suchen:
Sie sollten eine Datei mit dem Namen
lifecycle-mapping-metadata.xml
finden, in der Sie dieselben Änderungen vornehmen können, die in den anderen Antworten und in der Ausführung des M2E-Plugins beschrieben sind, die nicht behandelt werden .quelle
WORKSPACE/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xml
Datei auch bearbeiten , anstatt an den Gläsern herumzuspielen. Weitere Details finden Sie unterPreferences > Maven > Lifecycle Mappings
. Wenn Sie die Schnellkorrektur auswählen"Mark goal xxxxx as ignored in Eclipse build in Eclipse preferences (experimental)"
, werden alle erforderlichen Änderungen an der obigen Datei hinzugefügt.Ich hatte das gleiche Problem mit Eclipse v3.7 (Indigo) und m2eclipse wie mein Maven-Plugin. Der Fehler konnte leicht behoben werden, indem die Ausführungsphase innerhalb der Plugin-Definition explizit angegeben wurde. Mein Pom sieht also so aus:
quelle
Verwenden Sie dieses Software-Repository
Stellen Sie sicher, dass "Alle Update-Sites während der Installation kontaktieren, um die erforderliche Software zu finden" aktiviert ist.
Installieren Sie den AJDT m2e Configurator
Quelle: Upgrade der Maven-Integration für SpringSource Tool Suite 2.8.0 (Andrew Eisenberg)
Dies sollte ADJT automatisch installieren, wenn Sie es nicht installiert haben. Wenn dies nicht der Fall ist, installieren Sie AspectJ Development Tools (ADJT) zuerst von der "Indigo Update Site" (entsprechend Ihrer Eclipse-Version).
Weitere Informationen finden Sie auf der Website von AspectJ Development Tools .
quelle
Missing requirement: Maven Integration for AJDT (Optional) 0.13.0.201107281640 (org.maven.ide.eclipse.ajdt.feature.feature.group 0.13.0.201107281640) requires 'org.eclipse.ajdt.feature.group 1.5.0' but it could not be found
Gehen Sie zu,
workspace/rtc-ws/.metadata/.plugins/org.eclipse.m2e.core/lifecycle-mapping-metadata.xml
erstellen Sie dielifecycle-mapping-metadata.xml
Datei und fügen Sie sie unten ein. Laden Sie die Konfiguration wie folgt neuWenn Sie Eclipse 4.2 verwenden und Probleme mit der Zuordnung haben und keine Probleme mit Ihrer Zuordnung haben,
pom.xml
erstellen Sie eine neue Datei.lifecycle-mapping-metadata.xml
Konfigurieren Sie dieseWindows -> Preferences -> Lifecycle mapping
(vergessen Sie nicht, nach jeder Änderung dieser Datei die Metadaten für die Zuordnung der Lebenszykluszuordnungen im Arbeitsbereich neu zu laden!). Hier ist ein Beispiel basierend aufeclipse/plugins/org.eclipse.m2e.lifecyclemapping.defaults_1.2.0.20120903-1050.jar/lifecycle-mapping-metadata.xml
quelle
Ich hatte das gleiche Problem mit Indigo und einem Projekt, das Java-Quellen aus XSD generieren muss.
Ich könnte das Problem beheben, indem ich die fehlende Lebenszykluszuordnung wie auf dieser Seite beschrieben bereitstelle
quelle
Ich habe es nach dem Blogbeitrag " Upgrade der Maven-Integration für SpringSource Tool Suite 2.8.0" behoben .
Befolgen Sie die Hinweise im Abschnitt " Oh, oh ... meine Projekte werden nicht mehr erstellt ". Selbst wenn es für die SpringSource Tool Suite vorgesehen ist, habe ich damit eine reguläre Eclipse-Installation repariert. Ich musste meine POM-Dateien nicht ändern.
quelle
Verwenden Sie m2e 0.12 , letzte Version von Sonatype.
quelle
Dieser Fehler tritt auch bei Neon auf, da der m2e-Anschluss fehlt. Lösung: Schwebefehler und auswählen - Neue m2e-Anschlüsse entdecken.
Es wird ein neuer Stecker installiert und das wars.
quelle
Ich habe benutzt
und änderte es zu
und der Fehler ging weg. Möglicherweise wird nicht empfohlen, eine Ausführung an die Testkompilierungsphase zu binden, sodass das Finden einer anderen Phase eine alternative Lösung zum Hinzufügen einer Plugin-Verwaltungskonfiguration zum Maven-Lebenszyklus sein kann.
quelle
Wo finde ich WTP:
Fahren Sie mit der Maus auf <Plugin> in pom.xml und "Entdecken Sie neue m2e-Konnektoren".
Ich habe sie alle installiert, was standardmäßig überprüft ist und es funktioniert.
quelle
Ich hatte genau das gleiche Problem nach dem Update von m2e und löste es durch die Neuinstallation von Maven Integration für Eclipse WTP.
Wie sich herausstellte, habe ich es deinstalliert und versucht, m2e von Version 0.x auf 1.x zu aktualisieren
quelle
Ich hatte heute dieses Problem. Ich habe STS 3.4 mit dem mitgelieferten Roo 1.2.4 verwendet. Später habe ich mit Eclipse Kepler und Roo 1.2.5 den gleichen Fehler versucht.
Ich habe meine pom.xml geändert und nach dem Build und vor der Plugins-Deklaration das Tag pluginTemplates hinzugefügt, aber es hat nicht funktioniert.
Was hat die Magie für mich gemacht:
Konfigurierte JDK-, Roo- und Maven-Bin-Verzeichnisse auf meinem PATH:
export PATH = / opt / jdk1.7.0_51 / bin: $ PATH export PATH = / opt / spring-roo-1.2.5.RELEASE / bin: $ PATH export PATH = / opt / apache-maven-3.2.1 / bin : $ PATH
Ich habe meine Konfiguration wie folgt vorgenommen: ( http://docs.spring.io/spring-roo/reference/html/beginning.html )
Öffnen Sie mit Eclipse (nichts von STS, aber ich denke, es funktioniert): Importieren -> Bestehende Projekte in Workspace
quelle
Ich habe genau das gleiche Problem mit dem Maven Thrift Plugin festgestellt. Hier ist meine Lösung, bei der Sie Ihre pom.xml nicht durcheinander bringen müssen:
Verwenden Sie das Befehlszeilenprogramm maven mvn
um ein Eclipse-Projekt zu erstellen
Importieren Sie das Projekt in Eclipse. Denken Sie daran, zu verwenden
um das Projekt in Ihren Arbeitsbereich einzufügen.
Dies sollte das Problem beheben.
quelle
Anstatt Ihre POM-Datei durcheinander zu bringen, würde ich Ihnen empfehlen, in Eclipse zu Ansicht → Markierungen anzeigen zu gehen und die Markierungen der entsprechenden Fehler auszuwählen und zu löschen.
quelle
Wenn Sie Eclipse Juno verwenden, liegt möglicherweise das Problem der Maven-Integration für Eclipse WTP vor . Installieren Sie dasselbe vom Eclipse Market Place.
Geben Sie in der Eclipse IDE-Hilfe >> Eclipse Market Place >> die Abfrage wtp ein. Die Maven-Integration für Eclipse WTP für Juno wird angezeigt. Installieren Sie sie und aktualisieren Sie die Maven-Abhängigkeiten
quelle
Ich habe den gleichen Fehler bekommen. Nachdem ich folgendes getan hatte, ging es weg.
quelle
Diese Antwort ist genauso gut wie die oben genannte Top-Plugin-Management-Antwort (das heißt, es ist schrecklich).
Löschen Sie einfach den gesamten beleidigenden XML-Code im POM.
Erledigt. Problem gelöst (außer du hast gerade deine Maven-Konfiguration kaputt gemacht ...).
Entwickler sollten sehr vorsichtig sein, wenn sie Plugin-Management-Tags verstehen, bevor sie eine dieser Lösungen ausführen. Wenn Sie das Plugin-Management nur zufällig auf Ihre Plugins legen, wird der Maven-Build wahrscheinlich für alle anderen unterbrochen, damit Eclipse funktioniert.
quelle
Sie können diesen Fehler in Eclipse unterdrücken: Fenster -> Einstellungen -> Maven -> Fehler / Warnungen
quelle
Ändern
in
löste das Problem für mich.
quelle
Ich habe dies mit Eclipse v4.3 (Kepler) und Maven 3.1 festgestellt.
Die Lösung besteht darin, ein JDK und keine JRE für Ihr Eclipse-Projekt zu verwenden. Stellen Sie sicher, dass Sie versuchen,
maven clean
Eclipse zu testen, um fehlende JAR-Dateien herunterzuladen.quelle
Ich folgte dem GUI-Hinweis, um einen Connector zu finden, und fand dann AspectJ Integrator vom SpringSource Team. Nach der Installation wurde es erledigt.
quelle
Für mich wurde dies durch AspectJ-Klassen verursacht. Ich konnte unter Discovery kein Plugin finden, das helfen könnte. Daher habe ich dies behoben, indem ich die Dateien org.maven.ide.eclipse.ajdt unter Plugin- und Feature-Ordnern einer vorhandenen STS-Installation kopiert habe.
Ich weiß, sehr unhöflicher Ansatz.
quelle