79 lines
1.4 KiB
Groovy
79 lines
1.4 KiB
Groovy
apply plugin: 'java'
|
|
apply plugin: 'jooq'
|
|
apply plugin: 'flyway'
|
|
|
|
buildscript {
|
|
repositories {
|
|
mavenLocal()
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
classpath 'com.h2database:h2:1.3.170'
|
|
classpath 'com.github.ben-manes:gradle-flyway-plugin:0.6'
|
|
classpath 'org.jooq:jooq-codegen-gradle:latest.integration'
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
compile 'org.jooq:jooq:3.1.0'
|
|
compile 'com.google.guava:guava:14.0'
|
|
compile 'com.google.inject:guice:3.0'
|
|
|
|
testCompile 'com.h2database:h2:1.3.170'
|
|
testCompile 'org.hamcrest:hamcrest-all:1.3'
|
|
testCompile 'org.modelmapper:modelmapper:0.5.5'
|
|
testCompile 'com.googlecode.flyway:flyway-core:2.1'
|
|
testCompile dependencies.create('org.testng:testng:6.8') {
|
|
exclude group: 'junit'
|
|
}
|
|
}
|
|
|
|
test {
|
|
useTestNG()
|
|
}
|
|
|
|
generateJooq.dependsOn(flywayMigrate)
|
|
compileJava.dependsOn(generateJooq)
|
|
|
|
flyway {
|
|
databases {
|
|
main {
|
|
url = "jdbc:h2:${buildDir}/db/flyway"
|
|
schemas = [ 'example' ]
|
|
user = 'su'
|
|
}
|
|
}
|
|
}
|
|
|
|
generateJooq {
|
|
outputs.upToDateWhen {
|
|
!flywayMigrate.didWork
|
|
}
|
|
}
|
|
|
|
jooq {
|
|
jdbc {
|
|
url "jdbc:h2:${buildDir}/db/flyway"
|
|
driver 'org.h2.Driver'
|
|
user 'su'
|
|
}
|
|
generator {
|
|
database {
|
|
name 'org.jooq.util.h2.H2Database'
|
|
inputSchema 'example'
|
|
includes '.*'
|
|
}
|
|
generate {
|
|
deprecated false
|
|
}
|
|
target {
|
|
packageName 'example.generated'
|
|
}
|
|
}
|
|
}
|