apply plugin: 'java' apply plugin: 'antlr' apply plugin: org.hibernate.build.gradle.inject.InjectionPlugin dependencies { compile( libraries.commons_collections ) compile( libraries.jta ) compile( libraries.dom4j ) { transitive = false } compile( libraries.commons_annotations ) compile( libraries.jandex ) compile( libraries.jpa ) compile( libraries.javassist ) antlr( libraries.antlr ) provided( libraries.ant ) provided( libraries.jacc ) provided( libraries.validation ) testCompile( project(':hibernate-testing') ) testCompile( libraries.validation ) testCompile( libraries.validator ) { // for test runtime transitive = true } testRuntime( 'jaxen:jaxen:1.1' ) testRuntime( libraries.javassist ) } manifest.mainAttributes( 'Main-Class': 'org.hibernate.Version' ) sourceSets.main { originalJavaSrcDirs = java.srcDirs jaxbTargetDir = file( "${buildDir}/generated-src/jaxb/main" ) java.srcDir jaxbTargetDir } // resources inherently exclude sources sourceSets.test.resources { setSrcDirs( ['src/test/java','src/test/resources'] ) } ideaModule { sourceDirs.add( file( '$buildDir/generated-src/antlr/main' ) ) } task jaxb << { jaxbTargetDir = file( "${buildDir}/generated-src/jaxb/main" ) jaxbTargetDir.mkdirs() ant.taskdef(name: 'xjc', classname: 'com.sun.tools.xjc.XJCTask', classpath: configurations.jaxb.asPath) ant.jaxbTargetDir = jaxbTargetDir ant.xjc(destdir: '${jaxbTargetDir}', package: 'org.hibernate.metamodel.source.hbm.xml.config') { schema(dir: 'src/main/resources/org/hibernate', includes: 'hibernate-configuration-4.0.xsd') } ant.xjc(destdir: '${jaxbTargetDir}', package: 'org.hibernate.metamodel.source.hbm.xml.mapping') { schema(dir: 'src/main/resources/org/hibernate', includes: 'hibernate-mapping-4.0.xsd') } ant.xjc(destdir: '${jaxbTargetDir}', package: 'org.hibernate.metamodel.source.annotation.xml') { schema(dir: 'src/main/resources/org/hibernate/ejb', includes: 'orm_2_0.xsd') } } compileJava.dependsOn jaxb