diff --git a/spring-context/src/main/java/org/springframework/context/aot/GeneratedClassHandler.java b/spring-context/src/main/java/org/springframework/context/aot/GeneratedClassHandler.java index d74c4bdb592..f69d4d7a728 100644 --- a/spring-context/src/main/java/org/springframework/context/aot/GeneratedClassHandler.java +++ b/spring-context/src/main/java/org/springframework/context/aot/GeneratedClassHandler.java @@ -39,7 +39,9 @@ import org.springframework.core.io.ByteArrayResource; class GeneratedClassHandler implements BiConsumer { private static final Consumer asCglibProxy = hint -> - hint.withMembers(MemberCategory.INVOKE_DECLARED_CONSTRUCTORS); + hint.withMembers(MemberCategory.INVOKE_DECLARED_CONSTRUCTORS, + MemberCategory.INVOKE_DECLARED_METHODS, + MemberCategory.DECLARED_FIELDS); private final RuntimeHints runtimeHints; diff --git a/spring-context/src/test/java/org/springframework/context/aot/GeneratedClassHandlerTests.java b/spring-context/src/test/java/org/springframework/context/aot/GeneratedClassHandlerTests.java index 6d57fd4b6ea..3a12883e75d 100644 --- a/spring-context/src/test/java/org/springframework/context/aot/GeneratedClassHandlerTests.java +++ b/spring-context/src/test/java/org/springframework/context/aot/GeneratedClassHandlerTests.java @@ -54,7 +54,8 @@ class GeneratedClassHandlerTests { String className = "com.example.Test$$Proxy$$1"; this.handler.accept(className, TEST_CONTENT); assertThat(RuntimeHintsPredicates.reflection().onType(TypeReference.of(className)) - .withMemberCategory(MemberCategory.INVOKE_DECLARED_CONSTRUCTORS)) + .withMemberCategories(MemberCategory.INVOKE_DECLARED_CONSTRUCTORS, + MemberCategory.INVOKE_DECLARED_METHODS, MemberCategory.DECLARED_FIELDS)) .accepts(this.generationContext.getRuntimeHints()); }