Запускать генератор GreenDao автоматически каждый раз, когда я строю проект с Gradle

Я разрабатываю приложение для Android и использую greendao для моделирования своей базы данных. Я хотел запускать daogenerator каждый раз, когда перестраиваю проект, но он находится на другом модуле.

Как я могу сделать это с помощью Gradle?

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

Спасибо.

2 ответа

Решение

Конечно, вы можете сделать это!

  1. Создайте задачу, которая запускает ваше поколение. В моем случае модуль с greendao находится рядом с модулем приложения. Это Java-модуль.

    task generateDao(type: GradleBuild) { dir = "../greendaogenerator" tasks = ["run"] }

  2. Настройте, чтобы эта задача запускалась перед каждой задачей компиляции.

    tasks.whenTaskAdded { task -> if (task.name.startsWith('compile')) { task.dependsOn generateDao task.mustRunAfter generateDao } }

Не имея возможности комментировать: ответ qmar - это путь. Вы только что спасли мой день! Отлично работает, когда ваша реализация greendao представляет собой отдельный модуль внутри вашего проекта.

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