| apply plugin: 'maven' |
| apply plugin: 'signing' |
| |
| def isReleaseBuild() { |
| return version.contains("SNAPSHOT") == false |
| } |
| |
| def getMavenRepositoryUrl() { |
| return hasProperty('repositoryUrl') ? property('repositoryUrl') : "https://oss.sonatype.org/service/local/staging/deploy/maven2/" |
| } |
| |
| def getMavenRepositoryUsername() { |
| return hasProperty('sonatypeUsername') ? property('sonatypeUsername') : "" |
| } |
| |
| def getMavenRepositoryPassword() { |
| return hasProperty('sonatypePassword') ? property('sonatypePassword') : "" |
| } |
| |
| afterEvaluate { project -> |
| task androidJavadoc(type: Javadoc) { |
| source = android.sourceSets.main.java.srcDirs |
| classpath += files(android.bootClasspath) |
| } |
| |
| task androidJavadocJar(type: Jar) { |
| classifier = 'javadoc' |
| from androidJavadoc.destinationDir |
| } |
| |
| task androidSourcesJar(type: Jar) { |
| classifier = 'sources' |
| from android.sourceSets.main.java.srcDirs |
| } |
| |
| android.libraryVariants.all { variant -> |
| def name = variant.name.capitalize() |
| task "jar${name}"(type: Jar, dependsOn: variant.javaCompile) { |
| from variant.javaCompile.destinationDir |
| } |
| } |
| |
| artifacts { |
| archives androidJavadocJar |
| archives androidSourcesJar |
| archives jarRelease |
| } |
| |
| signing { |
| required { isReleaseBuild() && gradle.taskGraph.hasTask("uploadArchives") } |
| sign configurations.archives |
| } |
| |
| uploadArchives { |
| configuration = configurations.archives |
| repositories.mavenDeployer { |
| beforeDeployment { |
| MavenDeployment deployment -> signing.signPom(deployment) |
| } |
| |
| repository(url: getMavenRepositoryUrl()) { |
| authentication( |
| userName: getMavenRepositoryUsername(), |
| password: getMavenRepositoryPassword()) |
| } |
| |
| pom.project { |
| name 'SubsamplingScaleImageView' |
| packaging 'aar' |
| description 'Custom image views for Android with pinch to zoom, panning, rotation and animation support, with easy extension so you can add your own overlays and touch event detection.' |
| url 'https://github.com/davemorrissey/subsampling-scale-image-view' |
| |
| scm { |
| url 'scm:git@github.com:davemorrissey/subsampling-scale-image-view.git' |
| connection 'scm:git@github.com:davemorrissey/subsampling-scale-image-view.git' |
| developerConnection 'scm:git@github.com:davemorrissey/subsampling-scale-image-view.git' |
| } |
| |
| licenses { |
| license { |
| name 'The Apache Software License, Version 2.0' |
| url 'http://www.apache.org/licenses/LICENSE-2.0.txt' |
| distribution 'repo' |
| } |
| } |
| |
| developers { |
| developer { |
| id 'davemorrissey' |
| name 'Dave Morrissey' |
| } |
| } |
| } |
| } |
| } |
| |
| task installArchives(type: Upload) { |
| configuration = configurations.archives |
| repositories { |
| mavenDeployer { |
| repository url: "file://${System.properties['user.home']}/.m2/repository" |
| } |
| } |
| } |
| } |