Я пишу процессор аннотаций, который должен читать аннотации @JvmOverloads
из перегруженных конструкторов. Я использую стандарт executableElement.getAnnotation(JvmOverloads::class.java)
для этого. Когда я добавляю @JvmOverloads
в классы Java для имитации его в тестах, он работает просто отлично. Когда один и тот же код проходит через kapt в сгенерированных Kotlin классах в проекте Android, getAnnotation(JvmOverloads::class.java)
всегда возвращает событие null
, хотя в декомпилированных классах Kotlin этого проекта присутствует аннотация JvmOverloads
.
Может ли кто-нибудь помочь мне понять, почему это null
?
Код и запущенные тесты можно найти здесь: https://github.com/beworker/magnet/pull/86/files#diff-6c6b1cdd6b90d6064f257017dff243b4R142
Обновление: Не бери в голову. Кажется, это ошибка в kapt: https://youtrack.jetbrains.com/issue/KT-31146