Add support for Kotlin BeanPostProcessor beans

This commit adds support for Kotlin BeanPostProcessor beans which should
be defined in a companion object and annotated with `@JvmStatic`.

Closes gh-32946
This commit is contained in:
Sébastien Deleuze
2024-06-06 19:23:25 +02:00
parent 0758ae5ead
commit 7b9cbd7876
9 changed files with 190 additions and 56 deletions

View File

@@ -360,6 +360,9 @@ class ConfigurationClassParser {
// Process individual @Bean methods
Set<MethodMetadata> beanMethods = retrieveBeanMethodMetadata(sourceClass);
for (MethodMetadata methodMetadata : beanMethods) {
if (methodMetadata.isAnnotated("kotlin.jvm.JvmStatic") && !methodMetadata.isStatic()) {
continue;
}
configClass.addBeanMethod(new BeanMethod(methodMetadata, configClass));
}