Page 1 of 1

Überschreiben des Methodenkörpers von .class – wie Lombok

Posted: 14 Jan 2025, 13:00
by Guest
Ich verwende Java 17 und muss einen Annotationsprozessor erstellen, der (wie Lombok) die vorhandenen Methoden ändert.
Das Ziel ist eine Annotation namens @LogThis, die ersetzt wird den Methodenkörper mit einem Protokoll und entfernt eine Logik daraus. Der Rückgabewert ist standardmäßig primitiv oder null.
Java-Code:

Code: Select all

@LogThis
int sum(int a, int b) {
return a+b;
}
Kompilierte .class:

Code: Select all

int sum(int a, int b) {
Logger.log("...");
return 0; // return default values
}
Ich habe viele Tutorials und Anleitungen ausprobiert. Die meisten von ihnen haben nicht gelehrt, wie man die .class wie Lombok modifiziert.