So haken Sie benutzerdefinierte Compilerlogik basierend auf Annotationen

8

Ich möchte ein paar Annotationen definieren, die zusätzliche Warnungen / Fehler während der Kompilierung melden können (ähnlich wie die Annotationen @Nullable und @NotNull in IntelliJ ).

Ich möchte in der Lage sein, einige Compiler-Hooks zu schreiben, die auch meine Kompilierungslogik basierend auf diesen Attributen hinzufügen.

Ich möchte einen generischen Haken, wenn möglich, aber da wir Eclipse verwenden, wäre es auch ein Vorteil, wenn wir diese Fähigkeit hätten.

Ich würde gerne wissen:

  1. Ist es möglich? (eine der oben genannten Optionen)
  2. Wo fange ich an?
  3. Ich hatte bisher wenig Erfahrung mit Anmerkungen, also wenn ich das falsch mache - ich würde das gerne wissen und wenn möglich eine bessere Richtung finden.

Danke.

    
RonK 19.06.2010, 20:20
quelle

1 Antwort

6

Sie können den Java Annotation Processor verwenden (siehe JSR 269: Pluggable Annotation Processing API ) dafür. Von Annotation-Prüfung zur Kompilierzeit mit Java Annotation Processor :

  

Der JSR 269 besagt, dass Sie das können   Implementieren Sie ein Plug-in für den Compiler   welches die Anmerkungen behandeln kann. Dies   Plug-In kann als Parameter bei gegeben werden   kompilieren Sie Zeit, so wird Ihr Code sein   wenn eine deiner Annotationen aufgerufen wird   erscheint im Quellcode.

Der erwähnte Link bietet ein Beispiel, mit dem Sie beginnen können.

Siehe auch:

Pascal Thivent 19.06.2010, 20:30
quelle