2013-10-15 8 views
5

Ich benutze Eclipse Kepler und der Compiler ist so eingestellt, Java 7 zu verwenden. Ich habe eine JSR269-konforme Annotation Prozessor in meinem Klassenpfad (im Maven-Container).Wie man JSR269 Annotation Prozessor in Eclipse Kepler mit Java 7 & Maven

Wie kann dieser Annotationsprozessor am einfachsten ausgeführt werden?

Eigentlich würde ich erwarten, dass die Eclipse-Kompilierung diesen Annotationsprozessor während des Builds automatisch ausführt, da er JSR 269-kompatibel ist - aber das tut er nicht. Warum nicht - ist es aus Leistungsgründen?

Hinweis: Die Maven Build von der Befehlszeile funktioniert gut.

Nach einigen Recherchen hat sich herausgestellt, dass dies in den Projekteigenschaften (Java Compiler - Annotation processing - Factory Path) konfiguriert werden kann. Die Frage hier ist, dass ich natürlich die JAR-Datei des Annotationsprozessors verwenden möchte, die sich bereits im Klassenpfad (im Maven-Container) befindet. Wie kann ich darauf verweisen? Ich habe keinen Weg gefunden, es zu tun.

Das Beste, was ich herauskommen, ist die M2_REPO Variable zu verwenden und dann manuell den Pfad zu dem Prozessor hängt etwa so:

M2_REPO/com/gwtplatform/gwtp-processors/1.0.1/gwtp-processors-1.0.1.jar 

dies offensichtlich das Problem hat, dass der Prozessor nun auf 2 Stellen festgelegt ist: in der Maven-Pom-Datei und im Eclipse-Projekt. Wie vermeide ich das?

Antwort

4

Sie benötigen einen m2e-Connector, der Ihr Eclipse-Projekt automatisch für die Annotationsverarbeitung konfiguriert.

Der zu verwendende m2e-Anschluss hängt davon ab, wie Sie die Annotationsverarbeitung auf der Maven-Seite konfiguriert haben. Wenn Sie sich nur auf maven-compiler-plugin verlassen, um Ihren Annotationsprozessor zu finden, oder wenn Sie die maven-annotation-plugin dafür konfiguriert haben, können Sie den Connector m2e-apt by JBoss verwenden.

m2e-apt kann einfach aus dem m2e Discovery-Dialog in Eclipse ("Fenster" → "Einstellungen" → "Maven" → "Discovery" → "Katalog öffnen") installiert werden. Schalten Sie dann den Anschluss unter "Fenster" → "Einstellungen" → "Maven" → "Annotationsverarbeitung" ein. Wenn Sie nun Ihr Maven-Projekt aktualisieren (Rechtsklick auf das Projekt und wählen Sie "Maven" → "Projekt aktualisieren ..."), sollte die Annotationsverarbeitung für das Eclipse-Projekt automatisch in dem Dialog konfiguriert werden, den Sie in Ihrer Frage beschrieben haben.

Verwandte Themen