我正在开发一个 Android 应用程序,我正在使用 greendao 对我的数据库进行建模。每次重建项目时,我都想运行 daogenerator,但它位于另一个模块上。
我怎样才能使用 gradle 做到这一点?
也就是说,如何在构建另一个模块之前在一个模块中运行应用程序。
谢谢你。
我正在开发一个 Android 应用程序,我正在使用 greendao 对我的数据库进行建模。每次重建项目时,我都想运行 daogenerator,但它位于另一个模块上。
我怎样才能使用 gradle 做到这一点?
也就是说,如何在构建另一个模块之前在一个模块中运行应用程序。
谢谢你。
你当然可以做到!
创建一个运行您的一代的任务。就我而言,带有 greendao 的模块位于 app 模块旁边。它是一个java模块。
task generateDao(type: GradleBuild) {
dir = "../greendaogenerator"
tasks = ["run"]
}
配置此任务将在每个编译任务之前运行
tasks.whenTaskAdded { task ->
if (task.name.startsWith('compile')) {
task.dependsOn generateDao
task.mustRunAfter generateDao
}
}
无法发表评论:qmar 答案是要走的路。你刚刚拯救了我的一天!当您的 greendao 实现是项目中的一个单独模块时,它可以完美运行。