subprojects { apply plugin: 'java' apply plugin: 'eclipse' apply plugin: 'maven' group = 'at.gv.egiz.pdfas' configurations { deployerJars } repositories { mavenCentral() } dependencies { testCompile 'junit:junit:4.8.2' //to use WebDav protocol on upload deployerJars 'org.apache.maven.wagon:wagon-webdav:1.0-beta-2' } sourceCompatibility = 1.5 version = '4.0.0-RC10' project.ext{ releaseRepoUrl = "file://${project(':').projectDir}/../mvn-repo/releases" snapshotRepoUrl = "file://${project(':').projectDir}/../mvn-repo/snapshots" version = version pdfasversion = version revision = getCheckedOutGitCommitHash() //tomcatVersion = '7.0.54'; tomcatVersion = '8.0.9'; } jar { manifest.attributes provider: 'EGIZ', 'Specification-Version': getCheckedOutGitCommitHash(), 'Implementation-Version': project.version } uploadArchives { repositories.mavenDeployer { repository(url: project.releaseRepoUrl) snapshotRepository(url: project.snapshotRepoUrl) } } } def getCheckedOutGitCommitHash() { def gitFolder = "$projectDir/.git/" def takeFromHash = 40 /* * '.git/HEAD' contains either * in case of detached head: the currently checked out commit hash * otherwise: a reference to a file containing the current commit hash */ def head = new File(gitFolder + "HEAD").text.split(":") // .git/HEAD def isCommit = head.length == 1 // e5a7c79edabbf7dd39888442df081b1c9d8e88fd // def isRef = head.length > 1 // ref: refs/heads/master if(isCommit) return head[0].trim().take(takeFromHash) // e5a7c79edabb def refHead = new File(gitFolder + head[1].trim()) // .git/refs/heads/master refHead.text.trim().take takeFromHash } /* task docs(type: Javadoc) { source subprojects.collect {project -> project.sourceSets.main.allJava } classpath = files(subprojects.collect {project -> project.sourceSets.main.compileClasspath}) destinationDir = new File(projectDir, 'docs/full') }*/