2017-06-07 3 views
1

Das ist momentan kein Fehler, ich möchte nur wissen, wie es funktioniert, dass m2e das Maven-Compiler-Plugin ausführt.Warum führt M2Eclipse das Maven-Compiler-Plugin aus?

Ich kann keine LifecycleMappingMetadata in der pom.xml des Plugins finden.

Ist es möglich, dass die Magie in workspace\.metadata\.plugins\org.eclipse.m2e.core\>projectname>.lifecyclemapping stattfindet?

Ich kann die Datei nicht wirklich lesen, es scheint, binär zu sein.

Antwort

1

Es hängt davon ab, was Sie in Eclipse zu tun:

  • Wenn Sie ein Maven Ziel über eine Maven Startkonfiguration von Eclipse-laufen, wird dann maven-compiler-plugin ausgeführt, als ob Sie Maven von cmd Linie laufen würde (na ja, meistens).
  • Ansonsten nein maven-compiler-plugin wird ausgeführt; Eclipse führt einen eigenen Compiler aus und ignoriert das Plugin. Bitte beachten Sie jedoch, dass bei der Konfiguration von Parametern für die JVM unter pom.xml (im Konfigurationsbereich des Plugins) diese Parameter von bestimmten Eclipse-Plugins berücksichtigt werden können (m2e-apt kommt in den Sinn, aber es könnte andere geben)

Ich verstehe Ihre Aussage über LifecycleMappingMetadata nicht; hast du erwartet, es in pom.xml zu finden? Wenn ja, dann ist nach meiner Erfahrung maven-compiler-plugin davon ausgenommen (d. H. Sie müssen keine explizite Lebenszykluszuordnung hinzufügen).

+0

Ich laufe mein Projekt über run auf dem Server .. wenn das Plugin nicht ausgeführt wird, wer kompiliert meine Klassen in Ziel/Klassen-Ordner? Dieser Ordner ist nur über die pom.xml definiert. – wutzebaer

+0

Eclipse verwendet seinen eigenen Compiler (Eclipse JDT) - das ist der, der es tut. – Andrei

+0

Ich sollte hinzufügen, dass die meiste Zeit überraschend gut funktioniert. Ich konnte nur in einigen sehr speziellen Fällen Unterschiede feststellen (zwischen Eclipse-Kompilierung und Kompilierung über Standard-Maven/Java) wie Annotationsprozessoren und bestimmten Arten von Generika-Missbrauch. – Andrei

Verwandte Themen