Этот урок написан для проекта Android .Имя основного модуля "app" как обычно.Проект содержит подмодуль под названием «аннотация» , который является зависимым от «приложения».Модуль "app" выполняет обработку аннотации с объявлением gradle apt project(':annotation')
.
ПРОСТАЯ ВЕРСИЯ (запустить компиляцию с терминала и присоединить из IDE)
- [ТРЕБУЕТСЯ]Добавьте новую конфигурацию проекта "+" -> "Удаленный" .Отметьте «Только один экземпляр» .Все остальные настройки генерируются автоматически.Оставьте
<whole project>
как путь к классу.Порт следует оставить по умолчанию 5005 .
[ОБЯЗАТЕЛЬНО] Убедитесь, что вы остановили все экземпляры gradle, вызвав:
./gradlew --stop
[ОБЯЗАТЕЛЬНО] Запустите команду:
./gradlew --no-daemon -Dorg.gradle.debug=true :app:clean :app:compileDebugJavaWithJavac
Как можно быстрее запустите настройку проекта APT в режиме отладки:)
[СОВЕТ] Мы начинаем с ПУСТОГО
gradle.properties file [HINT] НЕ ИСПОЛЬЗУЙТЕ gradle
daemon (--no-daemon / org.gradle.daemon = ложная опция) [СОВЕТ] Запустите gradle в режиме
отладка (org.gradle.debug = истинная опция) [СОВЕТ] Выполнить
Компиляция модуля приложения не компиляция модуля процессора (компиляция приложения запускает обработку аннотаций!) Обычно мы НЕ добавляем какие-либо настройки компилятора Java в Android Studio (т. е. Файл -> другие настройки -> Настройки по умолчанию)
РАСШИРЕННАЯ ВЕРСИЯ (используйте gradle.properties )
- Добавьте следующее в ваш gradle.свойства файл:
org.gradle.daemon=false
org.gradle.debug=true
Запустить компиляцию с терминала:
./gradlew :app:clean :app:compileDebugJavaWithJavac
ADVANCED VERSION (просто нажмите debug в IDE)
- Добавьте сценарий bash в основной каталог вашего проекта (например, compile.sh )
#!/bin/bash
./gradlew :app:clean :app:compileDebugJavaWithJavac &
Помните о знаке «&» для фоновой обработки.
Перейдите к настройкам конфигурации APT, которые мы создали на шаге 1, и добавьте
Перед запуском конфигурации .Выберите
Запустить внешний инструмент .
Добавьте путь к сценарию
compile.sh , который мы создали ранее.
Предупреждение
Неправильная компиляция gradle, Исключения NullPointer во время компиляции и т. Д. Иногда приводят к зависанию AndroidStudio (зависает на этапе обновления gradle).Если вы не можете остановить gradle из IDE, используйте эту команду в терминале:
ps -A | grep gradle | awk '{ print $1; }' | xargs kill -9
Отключение опция отладки во время обновления проекта иногда помогает Android Studio прийтивернуться на правильный путь.