我正在开发一个Android应用程序,并使用greendao来建模我的数据库。我想每次重建一个项目时运行这个算法,但它在另一个模块上。每次使用gradle构建项目时自动运行GreenDao生成器
如何使用gradle来做到这一点?
这就是说,如何在构建其他模块之前在模块中运行应用程序。
谢谢。
我正在开发一个Android应用程序,并使用greendao来建模我的数据库。我想每次重建一个项目时运行这个算法,但它在另一个模块上。每次使用gradle构建项目时自动运行GreenDao生成器
如何使用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实现是一个单独的模块在你的项目。
当然,没问题。花了相当长的一段时间才弄明白。很高兴我能帮上忙。 –
嘿,谢谢你的回答。当我尝试使用它时,它需要“螺栓。任务”。这真的需要吗?我在哪里可以得到它? @qmar –
@FábioCarballo这可能是您的项目特定的事情,请更新您的项目结构的问题,这可能对我有帮助,以便回答 –