Gradle中的Greendao Generator任务



我想使用greendao,但我不想只为dao生成器进行单独的项目。

是否有可能在Gradle中完成一个任务,这只会为我生成一个新的DAO类,如果有的话,它会覆盖以上?

更新1:

我想要这样的结构:

src/main/java/model         // output of generator
src/main/java/daoGenerator  // generator source

和使用/src/main/java/daogenerator和greendao-generator库的唯一任务将是:

gradle generate

更新2:

最棒的是,当调用任何任务时,gradle检查src/main/java/daoGenerator中的任何内容是否已更改,如果是,则在称为任务之前fire gradle generate

首先创建一个类似的目录结构

src/your_build_type/java/model         // output of generator
src/your_build_type/java/daoGenerator  // generator source

现在您可以在模块的build.gradle中定义自己的buildType

       buildTypes {
          your_build_type {
            runProguard false
            proguardFile getDefaultProguardFile('proguard-android.txt')
            debuggable false
        }

定义此功能将为您生成一个名为coptembleyour_buildtype的任务,运行该任务将与your_build_type目录的源一起使用main。如果两者中的同一类都比在汇编时将一个躺在your_build_type中的一个类别中。

更改和任务处理将由Gradle自动完成,请观看 Hans Dockter 的真棒介绍

http://www.youtube.com/watch?feature=player_detailpage& v = 5a91dblx8qc#t = 2372

也许您可以做类似Java/with IntegrationTests之类的事情?我没有Greendao的经验,也没有对此进行测试,但是却是:

sourceSets {
    greendao {
        java.srcDir file('src/greendao/java')
    }
}
task generate(type:JavaCompile){
    mainClassesDir = sourceSets.greendao.output.classesDir
    classpath = sourceSets.greendao.runtimeClasspath
}

,然后在依赖子,Mustrunafter等堡垒上过分。如果更改源或输出已更改,则生成应运行。也许输出的东西有点烦人。所以也许您想以某种方式覆盖。

相关内容

  • 没有找到相关文章

最新更新