Процессор аннотаций не работает - файлы не создаются

Сейчас я искал причины, по которым мой собственный процессор аннотаций не работает в ОДНОМ из моих проектов. Настройка выглядит следующим образом:

  • Android Studio 2.3.3
  • Инструменты сборки Gradle 2.3.3
  • процессор аннотаций включен в Android Studio

Я попробовал общие решения:

  • удалить мой проект из последних версий Android Studio
  • сделать недействительным кеш и перезапустить андроид студию
  • снова импортировать мой проект в Android Studio (убедитесь, что обработка аннотаций была включена ранее)

Ничего не помогает Я обработал аннотацию, работающую в другом проекте, и сравнил ее с этим. Разница лишь в том, что я использую kotlin в другом проекте. Поэтому я просто добавил следующее в мой новый проект:

Котлин и apply plugin: 'kotlin-android' и вдруг работает обработка аннотации. Зачем? Я еще ничего не нашел по этому поводу, но в моем случае обработка аннотаций больше не работает (в более старых версиях Android она работала наверняка, хотя и не была уверена, когда она сломалась) без применения kotlin плагин...

Насколько я знаю, мне не нужно применять плагин процессора аннотаций, правильно? Я что-то упускаю?

пример build.gradle:

apply plugin: 'com.android.library'
apply plugin: 'me.tatarka.retrolambda'
apply plugin: 'kotlin-android'

android {

    if (project.hasProperty('setup.compileSdk'))
    {
        compileSdkVersion setup.compileSdk
        buildToolsVersion setup.buildTools
        defaultConfig {
            minSdkVersion setup.minSdk
            targetSdkVersion setup.targetSdk
        }
    }
    else
    {
        compileSdkVersion 26
        buildToolsVersion "26.0.1"
        defaultConfig {
            minSdkVersion 21
            targetSdkVersion 26
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }

    dataBinding.enabled = true

    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }

    retrolambda {
        jvmArgs '-noverify'
    }
}

dependencies {

    // dependencies...

    compile project(':bundleargs-annotation')
    annotationProcessor project(':bundleargs-processor')
}

2 ответа

  1. Android Studio - Файл - Закрыть проект
  2. Конфигурировать - Настройки - Построение, Выполнение, Развертывание - Компилятор - Процессоры аннотаций - Включить обработку аннотаций.
  3. Открытый проект - построить - восстановить проект.

Если это не поможет - пересоздай проект.

  1. Добавьте следующее в файл build.gradle проекта, используя аннотацию.

     
            
         plugins {
             id 'kotlin-kapt'
         }
     
     
  2. Добавьте зависимость процессора аннотаций следующим образом

     
            
         dependencies {
             implementation project('::bundleargs-annotation')
             kapt project(':bundleargs-processor')
         }
  3. Очистить > Построить

Эти шаги должны запускать сгенерированные файлы в папке ниже

      build > generated > source > kapt > build variant
Другие вопросы по тегам