Bug: 474722 - Updating Service build.gradle to generate source and javadoc jars as well as preparation for maven publish

Also adding mavenCentral as a repository.

Signed-off-by: James Sutton <james.sutton@uk.ibm.com>
This commit is contained in:
James Sutton 2015-09-07 15:47:13 +01:00
parent 8785111104
commit 5275765c0b
2 changed files with 55 additions and 9 deletions

View File

@ -3,6 +3,7 @@
buildscript { buildscript {
repositories { repositories {
jcenter() jcenter()
mavenCentral()
} }
dependencies { dependencies {
classpath 'com.android.tools.build:gradle:1.2.3' classpath 'com.android.tools.build:gradle:1.2.3'

View File

@ -1,7 +1,10 @@
apply plugin: 'android-sdk-manager' apply plugin: 'android-sdk-manager'
apply plugin: 'com.android.library' apply plugin: 'com.android.library'
apply plugin: 'maven-publish'
archivesBaseName = "org.eclipse.paho.android.service"
version = "1.0.3-SNAPSHOT"
android { android {
compileSdkVersion 19 compileSdkVersion 19
@ -40,18 +43,60 @@ dependencies {
} }
//task to delete the old jar android.libraryVariants.all { variant ->
task deleteOldJar(type: Delete) { task("generate${variant.name.capitalize()}JavaDoc", type: Javadoc) {
delete 'release/org.eclipse.paho.android.service.jar' description "Generates Javadoc for $variant.name."
source = variant.javaCompile.source
ext.androidJar = "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar"
classpath = files(variant.javaCompile.classpath.files) + files(ext.androidJar)
}
} }
//task to export contents as jar android.libraryVariants.all { variant ->
task exportJar(type: Copy) { task("generate${variant.name.capitalize()}JavaDocJar", type: Jar, dependsOn: "generate${variant.name.capitalize()}JavaDoc") {
classifier = 'javadoc'
from tasks."generate${variant.name.capitalize()}JavaDoc".destinationDir
}
}
task("generateSourcesJar", type: Jar) {
from android.sourceSets.main.java.srcDirs
classifier = 'sources'
}
task ("clearLibraryJar", type: Delete) {
delete('build/libs/' + archivesBaseName + '-' + version + '.jar')
}
task("renameLibraryJar", type: Copy, dependsOn: "clearLibraryJar") {
from('build/intermediates/bundles/release/') from('build/intermediates/bundles/release/')
into('release/') into('build/libs/')
include('classes.jar') include('classes.jar')
///Give whatever name you want to give rename('classes.jar', archivesBaseName + '-' + version + '.jar')
rename('classes.jar', 'org.eclipse.paho.android.service.jar')
} }
exportJar.dependsOn(deleteOldJar, build) task ("generateLibraryJar", type: Jar, dependsOn: "renameLibraryJar") {
from('build/libs/' + archivesBaseName + '-' + version + '.jar')
}
publishing {
publications {
eclipsePublication(MavenPublication) {
groupId 'org.eclipse.paho'
artifact generateSourcesJar
artifact generateLibraryJar
artifact generateDebugJavaDocJar
pom.withXml {
asNode().appendNode('parent').appendNode('groupId', 'org.eclipse.paho').parent()
.appendNode('artifactId', 'android-service-parent').parent()
.appendNode('version', version)
}
}
}
repositories {
maven {
url "file:/${project.projectDir}/artifacts"
}
}
}