2626import java .lang .reflect .InvocationTargetException ;
2727import java .util .stream .IntStream ;
2828import java .util .stream .Stream ;
29+ import org .jspecify .annotations .Nullable ;
2930import org .junit .jupiter .api .extension .ExtensionContext ;
3031import org .junit .jupiter .params .provider .Arguments ;
3132import org .junit .jupiter .params .provider .ArgumentsProvider ;
@@ -150,6 +151,7 @@ protected AbstractCompilersProvider() {
150151 }
151152
152153 @ Override
154+ @ SuppressWarnings ("deprecation" )
153155 public Stream <? extends Arguments > provideArguments (ExtensionContext context ) {
154156 return IntStream
155157 .rangeClosed (minVersion , maxVersion )
@@ -158,6 +160,18 @@ public Stream<? extends Arguments> provideArguments(ExtensionContext context) {
158160 .map (Arguments ::of );
159161 }
160162
163+ // Do not @Override as this does not exist prior to JUnit 5.13.
164+ // Use a generic Object for the ParameterDeclarations argument as that
165+ // also does not exist prior to JUnit 5.13, and we do not want to trigger
166+ // NoClassDefFoundExceptions on older versions of JUnit.
167+ @ SuppressWarnings ("override" )
168+ public Stream <? extends Arguments > provideArguments (
169+ @ Nullable Object parameters ,
170+ ExtensionContext context
171+ ) {
172+ return provideArguments (context );
173+ }
174+
161175 /**
162176 * Configure this provider with parameters from annotations.
163177 *
0 commit comments