apply plugin: 'digital.wup.android-maven-publish' apply plugin: 'maven-publish' apply plugin: 'com.jfrog.bintray' apply plugin: 'com.jfrog.artifactory' apply from: file('../gradle/artifact-settings.gradle') version = project.ext.versionName group = project.ext.mapboxArtifactGroupId publishing { publications { MapboxMapsSdkPublication(MavenPublication) { from components.android groupId this.group artifactId project.ext.mapboxArtifactId version this.version afterEvaluate { artifact("$buildDir/outputs/aar/mapbox-android-sdk-release.aar") artifact(androidSourcesJar) artifact(androidJavadocsJar) } pom.withXml { final mainNode = asNode() mainNode.appendNode('name', project.ext.mapboxArtifactTitle) mainNode.appendNode('description', project.ext.mapboxArtifactTitle) mainNode.appendNode('url', project.ext.mapboxArtifactUrl) final licenseNode = mainNode.appendNode('licenses').appendNode('license') licenseNode.appendNode('name', project.ext.mapboxArtifactLicenseName) licenseNode.appendNode('url', project.ext.mapboxArtifactLicenseUrl) licenseNode.appendNode('distribution', "repo") final developerNode = mainNode.appendNode('developers').appendNode('developer') developerNode.appendNode('id', project.ext.mapboxDeveloperId) developerNode.appendNode('name', project.ext.mapboxDeveloperName) final scmNode = mainNode.appendNode("scm") scmNode.appendNode("connection", project.ext.mapboxArtifactScmUrl) scmNode.appendNode("developerConnection", project.ext.mapboxArtifactScmUrl) scmNode.appendNode("url", project.ext.mapboxArtifactUrl) } } } } bintray { user = mapboxBintrayUser key = mapboxBintrayApiKey publications = ['MapboxMapsSdkPublication'] pkg { repo = project.ext.mapboxBintrayRepoName name = project.ext.mapboxArtifactId userOrg = project.ext.mapboxBintrayUserOrg licenses = [project.ext.mapboxArtifactLicenseName] vcsUrl = project.ext.mapboxArtifactVcsUrl publish = false version { name = project.ext.versionName desc = project.ext.mapboxArtifactDescription released = new Date() gpg { sign = true passphrase = mapboxGpgPassphrase } mavenCentralSync { sync = false } } } } artifactory { contextUrl = 'http://oss.jfrog.org' publish { repository { repoKey = 'oss-snapshot-local' username = mapboxBintrayUser password = mapboxBintrayApiKey } defaults { publications('MapboxMapsSdkPublication') } } } task androidJavadocs(type: Javadoc) { source = android.sourceSets.main.java.sourceFiles classpath = files(android.bootClasspath) failOnError = false } task androidJavadocsJar(type: Jar, dependsOn: androidJavadocs) { classifier = 'javadoc' from androidJavadocs.destinationDir } task androidSourcesJar(type: Jar) { classifier = 'sources' from android.sourceSets.main.java.sourceFiles } tasks.withType(Javadoc) { options.addStringOption('encoding', 'UTF-8') options.addStringOption('docencoding', 'UTF-8') options.addStringOption('charset', 'UTF-8') } artifacts { archives androidSourcesJar archives androidJavadocsJar } afterEvaluate { project -> android.libraryVariants.all { variant -> tasks.androidJavadocs.doFirst { classpath += files(variant.javaCompile.classpath.files) } } }