Я пытаюсь добавить логику повторных попыток в клиент micronaut, используя следующую аннотацию:
@Retryable(attempts = "3", delay = "100ms", includes = [ReadTimeoutException::class])
Однако kotlin компилирует ReadTimeoutException::class в объект AnnotationClassValue, обертывающий фактический класс Java. Поэтому, когда срабатывает перехватчик повторных попыток, он ищет ReadTimeoutException.class в массиве includes и не находит его.
Есть ли способ заставить kotlin скомпилировать KClass в фактический класс Java, который я хочу?
Да я на 1.1.0
Вот изображение из моего отладчика, показывающее AnnotationClassValue, которое ReadTimeoutException::class компилируется в https://ibb.co/vqQDS87





Это ошибка, исправленная в версии 1.1.1 автором https://github.com/micronaut-projects/micronaut-core/commit/566067b72bc90f04995005502fd7bfa3aae48119.
Я добавил тест для этого, и я не могу воспроизвести. До версии 1.1.0 возникала проблема с включением/исключением. Вы используете хотя бы эту версию?