So fügen Sie die Laufzeitverarbeitung der Annotation @NotNull hinzu

9

Ich war ziemlich überrascht zu sehen, dass IntelliJ tatsächlich die Laufzeit Verifizierung von @NotNull in IDEA beim Ausführen / Debuggen eines Komponententests durchführt. Ist es mir möglich, das gleiche Feature zu meinem Maven Build hinzuzufügen? (Welche jars / jvm-Einstellungen benötige ich?)

    
krosenvold 10.08.2011, 09:03
quelle

3 Antworten

4

IDEA verwendet eine eigene Methode zur Instrumentierung von Bytecode, um solche Validierungen hinzuzufügen. Für Befehlszeilen-Builds stellen wir die javac2-Ant-Task bereit, die die Instrumentierung ausführt (erweitert die Standard-Java-Task). Wenn Sie Ant Build von IDEA generieren, haben Sie die Möglichkeit, javac2 zu verwenden.

Wir bieten noch kein ähnliches Maven Plug-In , aber Es gibt eine Drittanbieter-Version , die für Sie funktionieren kann (obwohl sie etwas alt aussieht).

    
CrazyCoder 10.08.2011 09:20
quelle
0

Sie können in Ihren JUnit-Tests eine Annotation-Validierung durchführen.

%Vor%

Wenn Ihr Gift Frühling ist, werfen Sie einen Blick auf diese Frühjahrstests

    
Ali 10.08.2011 09:38
quelle
0

Ich würde den AOP-Weg gehen:

Zuerst benötigen Sie einen javax.validation kompatiblen Validator ( Hibernate Validator ist die Referenzimplementierung.

Erstellen Sie nun einen aspectj-Aspekt, der eine Validator-Instanz enthält, und überprüft alle Methodenparameter auf Validierungsfehler. Hier ist eine kurze Version, die Ihnen den Einstieg erleichtert:

%Vor%

Verwenden Sie das aspectj-maven-plugin , um diesen Aspekt in Ihren Test- und / oder Produktionscode einzuflechten.

Wenn Sie diese Funktionalität nur zum Testen wünschen, können Sie die Ausführung von aspectj-plugin in ein Profil einfügen.

    
Sean Patrick Floyd 10.08.2011 09:15
quelle

Tags und Links