В моем текущем коде (Java) я выполняю обработку пользовательских аннотаций с использованием аннотаций Java на уровне классов, то есть аннотации: @java.lang.annotation.Target({ElementType.TYPE})
.
Целевые классы содержат только статические методы утилиты, поэтому я использовал функции, связанные с файлами в Котлине. Как добавить эти аннотации к сгенерированному классу Kt
?
В Java:
// Utils.java package com.example; @MyCustomAspect public void Utils { public static void doStuff() { System.out.println("Hello"; } }
Сейчас в Котлине:
// Utils.kt package com.example; // ??? @MyCustomAspect ??? fun doStuff() { System.out.println("Hello"; }
Вы можете использовать AnnotationTarget.FILE
чтобы разрешить аннотацию, определенную Kotlin, для задания класса Kt
сгенерированного из файла .kt
. Определенная Java аннотация с целевым ElementType.TYPE
также может использоваться для целевого класса файла Kotlin:
@file:MyCustomAspect package org.example @Target(AnnotationTarget.FILE) annotation class MyCustomAspect fun doStuff(){ }