There's so many parameters I have a hard time trying to design a minimal test. I'm debugging it atm, and - I have not a real clue about many things in the stack - it somehow enters the junit vintage engine trying to treat it as a junit 4 test suite or something. I'll keep trying, and sorry if this stacktrace is totally useless to you, but maybe you can read between the lines:
Thread [WorkbenchTestable] (Suspended)
DefensiveAllDefaultPossibilitiesBuilder(AllDefaultPossibilitiesBuilder).runnerForClass(Class<?>) line: 36
DefensiveAllDefaultPossibilitiesBuilder.runnerForClass(Class<?>) line: 57
DefensiveAllDefaultPossibilitiesBuilder(RunnerBuilder).safeRunnerForClass(Class<?>) line: 70
ClassSelectorResolver.resolveTestClass(Class<?>, Context) line: 66
ClassSelectorResolver.resolve(ClassSelector, SelectorResolver$Context) line: 47
EngineDiscoveryRequestResolution.lambda$resolve$2(DiscoverySelector, SelectorResolver) line: 134
156049556.apply(Object) line: not available
ReferencePipeline$3$1.accept(P_OUT) line: 195
ArrayList$ArrayListSpliterator.tryAdvance(Consumer<? super E>) line: 1632
ReferencePipeline$Head<E_IN,E_OUT>(ReferencePipeline<P_IN,P_OUT>).forEachWithCancel(Spliterator<P_OUT>, Sink<P_OUT>) line: 127
ReferencePipeline$2(AbstractPipeline<E_IN,E_OUT,S>).copyIntoWithCancel(Sink<P_IN>, Spliterator<P_IN>) line: 502
ReferencePipeline$2(AbstractPipeline<E_IN,E_OUT,S>).copyInto(Sink<P_IN>, Spliterator<P_IN>) line: 488
ReferencePipeline$2(AbstractPipeline<E_IN,E_OUT,S>).wrapAndCopyInto(S, Spliterator<P_IN>) line: 474
FindOps$FindOp<T,O>.evaluateSequential(PipelineHelper<T>, Spliterator<S>) line: 150
ReferencePipeline$2(AbstractPipeline<E_IN,E_OUT,S>).evaluate(TerminalOp<E_OUT,R>) line: 234
ReferencePipeline$2(ReferencePipeline<P_IN,P_OUT>).findFirst() line: 543
EngineDiscoveryRequestResolution.resolve(DiscoverySelector, Function<SelectorResolver,Resolution>) line: 185
EngineDiscoveryRequestResolution.resolve(DiscoverySelector) line: 125
EngineDiscoveryRequestResolution.resolveCompletely(DiscoverySelector) line: 91
EngineDiscoveryRequestResolution.run() line: 82
EngineDiscoveryRequestResolver<T>.resolve(EngineDiscoveryRequest, T) line: 113
VintageDiscoverer.discover(EngineDiscoveryRequest, UniqueId) line: 44
VintageTestEngine.discover(EngineDiscoveryRequest, UniqueId) line: 63
DefaultLauncher.discoverEngineRoot(TestEngine, LauncherDiscoveryRequest) line: 181
DefaultLauncher.discoverRoot(LauncherDiscoveryRequest, String) line: 168
DefaultLauncher.discover(LauncherDiscoveryRequest) line: 124
TestPlanScannerFilter.accept(Class) line: 56
DefaultScanResult.applyFilter(ScannerFilter, ClassLoader) line: 102
JUnitPlatformProvider.scanClasspath() line: 143
JUnitPlatformProvider.invoke(Object) line: 124
NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) line: not available [native method]
NativeMethodAccessorImpl.invoke(Object, Object[]) line: 62
DelegatingMethodAccessorImpl.invoke(Object, Object[]) line: 43
Method.invoke(Object, Object...) line: 566
ReflectionUtils.invokeMethodWithArray2(Object, Method, Object...) line: 206
ProviderFactory$ProviderProxy.invoke(Object) line: 161
ProviderFactory.invokeProvider(Object, ClassLoader, Object, ProviderConfiguration, boolean, StartupConfiguration, boolean) line: 84
OsgiSurefireBooter.run(String[]) line: 116
UITestApplication(AbstractUITestApplication).runTests() line: 46
Linux. The choice of a GNU generation.