// Core build file // We don't define a module dependency on crypto to avoid creating a transitive dependency def cryptoProject = project(':spring-security-crypto') def cryptoClasses = cryptoProject.sourceSets.main.classes dependencies { compile cryptoProject, 'aopalliance:aopalliance:1.0', "net.sf.ehcache:ehcache:$ehcacheVersion", "org.springframework:spring-aop:$springVersion", "org.springframework:spring-beans:$springVersion", "org.springframework:spring-context:$springVersion", "org.springframework:spring-expression:$springVersion", "org.springframework:spring-jdbc:$springVersion", "org.springframework:spring-tx:$springVersion", "org.aspectj:aspectjrt:$aspectjVersion", 'javax.annotation:jsr250-api:1.0' testCompile 'commons-collections:commons-collections:3.2', "org.springframework:spring-test:$springVersion", "org.slf4j:jcl-over-slf4j:$slf4jVersion" testRuntime "hsqldb:hsqldb:$hsqlVersion", "cglib:cglib-nodep:$cglibVersion" } compileJava.dependsOn cryptoProject.compileJava classes.dependsOn cryptoProject.classes classes.doLast { copy { from cryptoClasses into sourceSets.main.classesDir } } sourceSets.main.compileClasspath += cryptoClasses sourceSets.test.compileClasspath += cryptoClasses sourceJar.from cryptoProject.sourceSets.main.java test { systemProperties['springSecurityVersion'] = version systemProperties['springVersion'] = springVersion } // Add the crypto module in the IDE ideaModule { def cryptoDep = new org.gradle.plugins.ide.idea.model.ModuleDependency('spring-security-crypto', 'COMPILE') cryptoDep.exported = true module.dependencies.add(cryptoDep) }