Beschreiben Sie den Fehler
Die Verwendung von "lombok.addJavaxGeneratedAnnotation = true " erzeugt nicht den gewünschten Effekt, wenn generierte Methoden die Annotation "@lombok.Generated" haben. Die Delomboked-Dateien zeigen stattdessen, dass die Anmerkung "@java.annotation.Generated("lombok")" ist. Diese Anmerkung wird nicht an die Klasse weitergegeben, sodass Post-Test-Prozessoren wie JaCoCo die generierten Klassen und Methoden nicht aus der Abdeckungsberechnung ausschließen können.
Fortpflanzen
Anhängen eines kleinen Maven-basierten Projekts. Der Aufruf von „mvn clean test“ sollte Folgendes erzeugen:
Erwartetes Verhalten
Alle von Lombok generierten Methoden sollten im JaCoCo-Abdeckungsbericht übersprungen werden.
Versionsinfo (bitte ergänzen Sie die folgenden Informationen):
Zusätzlicher Kontext
Bei den Testfällen in der angehängten ZIP-Datei ist @Test zu Testzwecken deaktiviert. Wenn diese aktiviert sind, werden nur die generierten Methoden für equals, hashCode, toString und canEqual nicht abgedeckt, da diese nicht von den enthaltenen Tests aufgerufen wurden.
test-project.zip
Ich habe dies als Fehlerbericht protokolliert, da mein Beitrag im Benutzerforum noch vom Moderator genehmigt wird.
@ramfree17 Verwechselst du nicht addJavaxGeneratedAnnotation
mit addLombokGeneratedAnnotation
? Siehe https://projectlombok.org/features/configuration.
@Maaartinus : Ja, das bin ich definitiv. Dies ist ein weiterer Fall von PEBKAC (es besteht ein Problem zwischen Tastatur und Stuhl).
Dieser Fehlerbericht wird jetzt geschlossen.
Hilfreichster Kommentar
@ramfree17 Verwechselst du nicht
addJavaxGeneratedAnnotation
mitaddLombokGeneratedAnnotation
? Siehe https://projectlombok.org/features/configuration.