Как получить Class или Element при обработке аннотаций в processing?
@SupportedSourceVersion(SourceVersion.RELEASE_8
class Processor : AbstractProcessor() {
override fun getSupportedAnnotationTypes() =
mutableSetOf(AdapterModel::class.java.canonicalName)
override fun process(annotations: MutableSet<out TypeElement>?,
roundEnv: RoundEnvironment): Boolean {
roundEnv.getElementsAnnotatedWith(AdapterModel::class.java)
.forEach {
it.asType() // get TypeMirror
}
return true
}
}
При обработке аннотаций, у меня есть методы которые возвращают экземпляр класса, мне нужно получить этот класс, можно ли как то его вытащить из TypeMirror? Обработка аннотаций при компиляции, пробовал приводить возвращаемый тип к Type, не работает. https://docs.oracle.com/javase/7/docs/api/javax/lang/model/element/Element.html