Describe the bug Hi, im trying to get Sprint initializer generated project to work with AOT related tools. However it fails on test phase "processTestAot" with the following stacktrace:
Exception in thread "main" java.lang.NoClassDefFoundError: jakarta/servlet/Filter
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
at org.springframework.security.test.aot.hint.WebTestUtilsTestRuntimeHints.registerFilterChainProxyHints(WebTestUtilsTestRuntimeHints.java:44)
at org.springframework.security.test.aot.hint.WebTestUtilsTestRuntimeHints.registerHints(WebTestUtilsTestRuntimeHints.java:38)
at org.springframework.test.context.aot.TestContextAotGenerator.lambda$processAheadOfTime$0(TestContextAotGenerator.java:145)
I believe this should work without "spring-boot-starter-web" aka MVC dependency as there is no non-servlet handling in WebTestUtilsTestRuntimeHints.java.
To Reproduce Run tests via "build" or "aotTestClasses" task.
Expected behavior Test should work successfully without MVC bloating.
Sample
A link to a GitHub repository with a minimal, reproducible sample. Or https://start.spring.io/ with Spring Boot 3.0.2, Java 17, Kotlin language, Gradle .kts, Spring Reactive Web, GraalVM Native Support and Spring Security.