-
Notifications
You must be signed in to change notification settings - Fork 38.5k
CGLIB proxies are not used at runtime on @Configuration
classes in AOT mode
#29107
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Labels
in: core
Issues in core modules (aop, beans, core, context, expression)
theme: aot
An issue related to Ahead-of-time processing
type: bug
A general bug
Milestone
Comments
@Configuration
in AOT mode@Configuration
classesin AOT mode
@Configuration
classesin AOT mode@Configuration
classes in AOT mode
We need to swap the creation of the raw class to the cglib proxy. I was hoping I could avoid having to change code generation for this but it turns out that there isn't a way to achieve this using an instance supplier. I've a proposal in 3b8bcdf. This is blocked by spring-projects/spring-boot#32304 and, to some extent, #29141 |
I have it working but I think it needs a bit more work to test it correctly. |
snicoll
added a commit
to snicoll/spring-framework
that referenced
this issue
Sep 15, 2022
This commit updates code generation to customize the instantiation of a configuration class that requires a proxy. Rather than instantiating the raw class, the proxy is used. See spring-projectsgh-29107
snicoll
added a commit
to snicoll/spring-framework
that referenced
this issue
Sep 19, 2022
This commit updates code generation to customize the instantiation of a configuration class that requires a proxy. Rather than instantiating the raw class, the proxy is used. See spring-projectsgh-29107
jhoeller
added a commit
that referenced
this issue
Oct 3, 2022
…ing) For non-required method proxies, prefer regular reflective invocation instead. See gh-29107
jhoeller
added a commit
that referenced
this issue
Oct 3, 2022
…ssing) Method proxies might not actually be used later on, so failure is not fatal. See gh-29107
jhoeller
added a commit
that referenced
this issue
Oct 3, 2022
Do not trigger early initialization on Factory classes (e.g. AOP proxies) See gh-29107
jhoeller
added a commit
that referenced
this issue
Oct 4, 2022
This propagates current Enhancer settings (naming strategy etc) to the method proxies. See gh-29107
izeye
added a commit
to izeye/spring-framework
that referenced
this issue
Oct 16, 2022
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
in: core
Issues in core modules (aop, beans, core, context, expression)
theme: aot
An issue related to Ahead-of-time processing
type: bug
A general bug
Uh oh!
There was an error while loading. Please reload this page.
Consider the following configuration class:
On JVM in regular mode, it prints:
On JVM in AOT mode or native, while it seems CGLIB proxies are generated correctly at build time, but they seems not used since it prints:
The code generated AOT maybe needs to be updated to leverage those CGLIB proxies.
The text was updated successfully, but these errors were encountered: