Android Studio 3.0 annotationProcessor

Я получаю следующую ошибку после того, как попытаюсь построить свой проект:

Error:android-apt plugin is incompatible with the Android Gradle plugin.  Please use 'annotationProcessor' configuration instead.

Я попытался добавить annotationProcessor '.....' после каждой implementation но не успел избавиться от ошибки.

Это происходит после обновления студии android до последней версии (3.0).

Редактировать:

Добавление includeCompileClasspath true внутри defaultConfig не помогает:

    javaCompileOptions {
        annotationProcessorOptions {
            includeCompileClasspath true
        }
    }

Любые решения?

Ответы

Ответ 1

Прежде всего, после обновления есть несколько изменений в градиенте.

Его важно обновить до последней версии gradle, чтобы исправить это.

Это означает, что вам нужно добавить правильную версию для вашей градиента сборки, которая в настоящее время

 dependencies {
    classpath 'com.android.tools.build:gradle:3.0.0'
 }

следующий шаг - удалить ваш android-apt который больше не нужен.

его достаточно, чтобы apply plugin: 'com.android.application' только apply plugin: 'com.android.application'

Onec вы сделали это, измените свои зависимости от

compile для implementation, apt to annotationProcessor и testCompile to androidTestImplementation

Если вы сделали это, аннулируйте кеш и перезагрузите, что очень важно.

Тогда это должно сработать.

Вы можете найти рабочий файл градиента, используя последнюю версию

app build.gradle и проект build.gradle

p/s: для многих людей по-прежнему используется старая версия Realm,

Обновите последнюю версию, так как в старой версии все еще используется "android-apt".

Ответ 2

вы должны добавить annotationProcessorOptions в графе уровня приложения.

android {    
compileSdkVersion 26    
buildToolsVersion '26.0.2'    
defaultConfig { 
   applicationId "com.your.packagename"  
   minSdkVersion 16
   targetSdkVersion 26
   versionCode 1
   versionName "1.0"
   testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" 

   // add below section
   javaCompileOptions {
        annotationProcessorOptions {
            includeCompileClasspath true
        }
    }
 }
}