import java.util.jar.Manifest import org.gradle.api.tasks.bundling.GradleManifest allprojects { version = '3.0.1.CI-SNAPSHOT' group = 'org.springframework.security' repositories { mavenRepo name:'Local', urls:'file:///Users/luke/.m2/repository' mavenCentral() mavenRepo name:'SpringSource Milestone Repo', urls:'http://repository.springsource.com/maven/bundles/milestone' } } subprojects { apply id: 'java' springVersion = '3.0.0.RELEASE' springLdapVersion = '1.3.0.RELEASE' ehcacheVersion = '1.6.2' aspectjVersion = '1.6.5' apacheDsVersion = '1.5.5' jstlVersion = '1.1.2' configurations { bundlor provided } dependencies { compile 'commons-logging:commons-logging:1.1.1' testCompile 'junit:junit:4.7', 'org.mockito:mockito-core:1.7', 'org.jmock:jmock:2.5.1', 'org.jmock:jmock-junit4:2.5.1', 'org.hamcrest:hamcrest-core:1.1', 'org.hamcrest:hamcrest-library:1.1', "org.springframework:spring-test:$springVersion" bundlor 'com.springsource.bundlor:com.springsource.bundlor.ant:1.0.0.RC1', 'com.springsource.bundlor:com.springsource.bundlor:1.0.0.RC1', 'com.springsource.bundlor:com.springsource.bundlor.blint:1.0.0.RC1' } sourceSets { main { compileClasspath = compileClasspath + configurations.provided } test { compileClasspath = compileClasspath + configurations.provided } } test { options.fork(forkMode: ForkMode.ONCE, jvmArgs: ["-ea", '-Xms128m', '-Xmx1g', '-XX:MaxPermSize=128m', '-XX:+HeapDumpOnOutOfMemoryError']) } compileJava.doLast { ant.taskdef(resource: 'com/springsource/bundlor/ant/antlib.xml', classpath: configurations.bundlor.asPath) File template = new File(projectDir, 'template.mf') if (template.exists()) { ant.bundlor(inputPath: "$buildDir/classes", outputPath: "$buildDir/classes", manifestTemplatePath: "$projectDir/template.mf") { property(name: 'version', value: "$version") property(name: 'spring.version', value: "$springVersion") } // See GRADLE-395 for support for using an existing manifest jar.manifest = new GradleManifest(new Manifest(new File("$buildDir/classes/META-INF/MANIFEST.MF").newInputStream())) } } } subprojects { apply id: 'maven' // Create a source jar for uploading task sourceJar(type: Jar) { classifier = 'sources' from sourceSets.main.java } artifacts { archives sourceJar } def deployer = null uploadArchives { repositories { deployer = mavenDeployer { repository(url: "file://localhost/${rootProject.projectDir}/pomRepo/") snapshotRepository(url: "file://localhost/${rootProject.projectDir}/snapshotRepo/") } } } installer = install.repositories.mavenInstaller conf2ScopeMappings.addMapping(1, configurations.provided, "provided") }