Включить параметр Процессоры аннотаций в Android Studio 2.2

Я пытаюсь использовать Java 8 в своем проекте, и для этого я добавил компилятор jack.

После включения jack у меня начались проблемы с библиотеками, использующими обработку аннотаций, и, просматривая веб-страницы, я прочитал, что мне нужны android studio 2.2 и com.android.tools.build:gradle:2.2.0-alpha6 для компиляции библиотек, генерирующих код из аннотаций,

Я загружаю Android Studio 2.2 preview 6 и конвертирую в него свой проект. И после этого я обнаружил, что плагин apt gradle больше не поддерживается, и затем мне нужно было изменить каждую зависимость, которая использует apt, на использование новой опции annotationProcessor.

Пример:

apt "org.projectlombok:lombok:$rootProject.lombokVersion"

в

annotationProcessor "org.projectlombok:lombok:$rootProject.lombokVersion"

Now if I use "make project" the project is compiled without problems, but if I try to execute it I have errors with the code that should be generated by the annotations.

Also when I open the project I receive a warning from the lombok plugin "Annotation processing seems to be disabled for the project". When I open the project settings and go to "Build -> Compiler" I can't find Annotation Processors.

So, my question is: How can I enable Annotation Processors in Android Studio 2.2? This feature was disabled? If yes, how can I generate the code from annotations?

--EDIT-- I'm making a PullRequest to change the project to compile with Java8, you can check the PR here: https://github.com/jonathanrz/myexpenses-android/pull/57

11 ответов

Решение

Закройте проект. В диалоговом окне "Добро пожаловать в Android Studio" нажмите "Настроить" в правом нижнем углу.

Затем,

Настройки> Построение, Выполнение, Развертывание> Компилятор> Процессоры аннотаций. Отметьте галочкой "Включить обработку аннотаций".

Если это не работает. Удалите проект из диалога "Добро пожаловать в Android Studio" и откройте из нового.

Работал на меня.

  1. Закройте все ваши AndroidStudio Project
  2. Увидеть введите описание изображения здесь

  3. Нажмите Configure-> Настройка см. введите описание изображения здесь

Вы можете включить процессоры аннотаций, не закрывая проект в Android Studio 2.3:

File -> Other Settings -> Default Settings

Build, Execution, Deployment -> Compiler -> Annotation Processors -> 
Enable annotation processing.

Не забудьте очистить, построить, сделать недействительным и перезапустить после этого.
Ура!

/questions/29352890/vklyuchit-parametr-protsessoryi-annotatsij-v-android-studio-22/29352898#29352898

и после сделать: File > Invalidate Caches / Restart... > Invalidate and Restart

Откройте compiler.xml в папке.idea. У меня было следующее:

<annotationProcessing>
  <profile default="true" name="Default" enabled="false">
    <processorPath useClasspath="true" />
  </profile>
</annotationProcessing>

Я просто поменял enable на true и заново открыл проект.

  1. Закройте свой проект.
  2. Настройки> Построение, Выполнение, Развертывание> Компилятор> Процессоры аннотаций. Установите флажок "Включить обработку аннотаций".
  3. Откройте свой проект.
  4. File> Invalidate Caches / Restart...> Invalidate and Restart

Полностью дождитесь процесса, тогда все будет хорошо.

Этот ответ для тех, кто столкнется с этой проблемой в будущем

Для Котлина

Добавить плагин KAPT

apply plugin: 'kotlin-kapt'
implementation 'com.google.dagger:dagger:2.21'
kapt 'com.google.dagger:dagger-compiler:2.21'

Для Java

implementation 'com.google.dagger:dagger:2.21'
annotationProcessor 'com.google.dagger:dagger-compiler:2.21'

Добавление в @Jacques Koorts и @mtrakal

Если вы не можете перейти на экран "Добро пожаловать в Android Studio". Пытаться File -> Close Project вместо нажатия X значок. Затем вы увидите экран "Добро пожаловать в Android Studio" и увидите механизм внизу справа. После этого следуйте принятому ответу и, возможно, аннулированию кэша.

Глупо, но у меня получилось, попробуйте изменить версию библиотеки, в моем случае я обновился до 1.4.1

лично я добавлю это в ваш файл build.gradle(Module:app)

      android {
    ...
    defaultConfig {
        ...
        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath false
            }
        }
    }
}

Иногда опция аннотирования будет недоступна, если проект не интегрирован в систему управления версиями. Перейдите в VCS-> Включить интеграцию управления версиями, затем, вуаля, вы увидите опцию аннотирования и сможете увидеть имя автора рядом с номерами строк в редакторе.

Другие вопросы по тегам