Используйте процессор аннотаций в kotlin - PullRequest
0 голосов
/ 29 сентября 2018

У меня есть простая аннотация в моем процессоре, такая как:

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.TYPE) @Retention(RetentionPolicy.CLASS)
public @interface BundleBuilder
{
    // ...
}

Это работает в файлах java, но как только я конвертирую свой файл в kotlin, импорт аннотации больше не работает.Почему?

enter image description here

Что мне нужно изменить, чтобы его аннотация работала также в kotlin?Из документации видно, что kotlin на 100% совместим с java-аннотациями, поэтому я немного запутался, в чем проблема ... Я бы понял, если процессор не работает и его нужно настроить для работы с kotlin, ноЯ не знаю, почему сам импорт не работает ...

Библиотека, о которой я говорю, находится здесь: https://github.com/MFlisar/BundleArgs

1 Ответ

0 голосов
/ 29 сентября 2018

Я думаю, вы должны использовать kapt для обработки аннотаций в вашем build.gradle.В конце концов, очистите и перестройте ваш проект так.

apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'

//...

dependencies {
    compileOnly 'com.github.MFlisar.BundleArgs:bundleargs-annotation:1.3'
    kapt 'com.github.MFlisar.BundleArgs:bundleargs-processor:1.3'
}

repositories {
    maven { url "https://jitpack.io" }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...