diff --git a/springdoc-openapi-starter-common/pom.xml b/springdoc-openapi-starter-common/pom.xml index 459240359..285b3dc32 100644 --- a/springdoc-openapi-starter-common/pom.xml +++ b/springdoc-openapi-starter-common/pom.xml @@ -72,6 +72,11 @@ kotlinx-coroutines-reactor provided + + org.jetbrains.kotlin + kotlin-reflect + provided + org.springframework.boot diff --git a/springdoc-openapi-starter-common/src/main/java/org/springdoc/core/configuration/SpringDocKotlinConfiguration.kt b/springdoc-openapi-starter-common/src/main/java/org/springdoc/core/configuration/SpringDocKotlinConfiguration.kt index 82cd690a5..d11d0cb91 100644 --- a/springdoc-openapi-starter-common/src/main/java/org/springdoc/core/configuration/SpringDocKotlinConfiguration.kt +++ b/springdoc-openapi-starter-common/src/main/java/org/springdoc/core/configuration/SpringDocKotlinConfiguration.kt @@ -128,10 +128,15 @@ class SpringDocKotlinConfiguration() { return kotlinFunction.parameters[parameterIndex + 1] } - @Bean - @Lazy(false) - @ConditionalOnMissingBean - fun kotlinDeprecatedPropertyCustomizer(objectMapperProvider: ObjectMapperProvider): KotlinDeprecatedPropertyCustomizer { - return KotlinDeprecatedPropertyCustomizer(objectMapperProvider) + @ConditionalOnClass(name = ["kotlin.reflect.full.KClasses"]) + class KotlinReflectDependingConfiguration { + + @Bean + @Lazy(false) + @ConditionalOnMissingBean + fun kotlinDeprecatedPropertyCustomizer(objectMapperProvider: ObjectMapperProvider): KotlinDeprecatedPropertyCustomizer { + return KotlinDeprecatedPropertyCustomizer(objectMapperProvider) + } } + }