Narrow early initialization of CGLIB method proxies (for AOT processing)

Do not trigger early initialization on Factory classes (e.g. AOP proxies)

See gh-29107
This commit is contained in:
Juergen Hoeller
2022-10-03 18:00:57 +02:00
parent 3b2b36d0b8
commit 1b1682eacd

View File

@@ -57,8 +57,8 @@ public class MethodProxy {
proxy.createInfo = new CreateInfo(c1, c2);
// SPRING PATCH BEGIN
if (!c1.isInterface() && c1 != Object.class) {
// Try early initialization for overridden methods on subclasses
if (!c1.isInterface() && c1 != Object.class && !Factory.class.isAssignableFrom(c2)) {
// Try early initialization for overridden methods on specifically purposed subclasses
try {
proxy.init();
}