Micronaut @Retryable 注释中的 KClass 无法编译以更正 class 对象
KClass in Micronaut @Retryable annotation doesn't compile to correct class object
我正在尝试使用以下注释向 micronaut 客户端添加重试逻辑:
@Retryable(attempts = "3", delay = "100ms", includes = [ReadTimeoutException::class])
然而,kotlin 将 ReadTimeoutException::class
编译为一个 AnnotationClassValue
对象,包裹了实际的 java class。因此,当重试拦截器触发时,它会在 includes
数组中查找 ReadTimeoutException.class
,但没有找到。
有什么方法可以强制 kotlin 将 KClass 编译成我想要的实际 java class?
我正在尝试使用以下注释向 micronaut 客户端添加重试逻辑:
@Retryable(attempts = "3", delay = "100ms", includes = [ReadTimeoutException::class])
然而,kotlin 将 ReadTimeoutException::class
编译为一个 AnnotationClassValue
对象,包裹了实际的 java class。因此,当重试拦截器触发时,它会在 includes
数组中查找 ReadTimeoutException.class
,但没有找到。
有什么方法可以强制 kotlin 将 KClass 编译成我想要的实际 java class?