apply plugin: 'signing' if (project.hasProperty("android")) { task sourcesJar(type: Jar) { classifier = 'sources' from android.sourceSets.main.java.srcDirs } task javadoc(type: Javadoc) { source = android.sourceSets.main.java.srcDirs classpath += project.files(android.getBootClasspath().join(File.pathSeparator)) } } else { task sourcesJar(type: Jar) { classifier = 'sources' from sourceSets.main.allSource } } task javadocJar(type: Jar, dependsOn: javadoc) { classifier = 'javadoc' from javadoc.destinationDir } artifacts { archives javadocJar archives sourcesJar } signing { required { isReleaseVersion && gradle.taskGraph.hasTask("uploadArchives") } sign configurations.archives } uploadArchives { repositories { mavenDeployer { beforeDeployment { MavenDeployment deployment -> signing.signPom(deployment) } repository(url: "https://oss.sonatype.org/service/local/staging/deploy/maven2/") { authentication(userName: SONATYPE_USERNAME, password: SONATYPE_PASSWORD) } snapshotRepository(url: "https://oss.sonatype.org/content/repositories/snapshots/") { authentication(userName: SONATYPE_USERNAME, password: SONATYPE_PASSWORD) } pom.project { packaging 'jar' name 'vtm' description 'OpenGL vector map library written in Java - running on Android, iOS, Desktop and within the browser.' url 'https://github.com/mapsforge/vtm' licenses { license { name 'GNU Lesser GPL' url 'http://www.gnu.org/licenses/lgpl.html' distribution 'repo' } } scm { connection 'scm:git:https://github.com/mapsforge/vtm' developerConnection 'scm:git:https://github.com/mapsforge/vtm' url 'https://github.com/mapsforge/vtm' } developers { developer { id 'hannes.janetzek' name 'Hannes Janetzek' email 'hannes.janetzek@gmail.com' } developer { id 'devemux86' name 'Emux' email 'devemux86@gmail.com' } } } } } }