|
1 | 1 | apply plugin: 'android-sdk-manager' |
2 | 2 | apply plugin: 'com.android.library' |
| 3 | +apply plugin: 'maven-publish' |
3 | 4 |
|
4 | 5 |
|
| 6 | +archivesBaseName = "org.eclipse.paho.android.service" |
| 7 | +version = "1.0.3-SNAPSHOT" |
5 | 8 |
|
6 | 9 | android { |
7 | 10 | compileSdkVersion 19 |
@@ -40,18 +43,60 @@ dependencies { |
40 | 43 | } |
41 | 44 |
|
42 | 45 |
|
43 | | -//task to delete the old jar |
44 | | -task deleteOldJar(type: Delete) { |
45 | | - delete 'release/org.eclipse.paho.android.service.jar' |
| 46 | +android.libraryVariants.all { variant -> |
| 47 | + task("generate${variant.name.capitalize()}JavaDoc", type: Javadoc) { |
| 48 | + description "Generates Javadoc for $variant.name." |
| 49 | + source = variant.javaCompile.source |
| 50 | + ext.androidJar = "${android.sdkDirectory}/platforms/${android.compileSdkVersion}/android.jar" |
| 51 | + classpath = files(variant.javaCompile.classpath.files) + files(ext.androidJar) |
| 52 | + } |
| 53 | +} |
| 54 | + |
| 55 | +android.libraryVariants.all { variant -> |
| 56 | + task("generate${variant.name.capitalize()}JavaDocJar", type: Jar, dependsOn: "generate${variant.name.capitalize()}JavaDoc") { |
| 57 | + classifier = 'javadoc' |
| 58 | + from tasks."generate${variant.name.capitalize()}JavaDoc".destinationDir |
| 59 | + } |
| 60 | +} |
| 61 | + |
| 62 | +task("generateSourcesJar", type: Jar) { |
| 63 | + from android.sourceSets.main.java.srcDirs |
| 64 | + classifier = 'sources' |
| 65 | +} |
| 66 | + |
| 67 | +task ("clearLibraryJar", type: Delete) { |
| 68 | + delete('build/libs/' + archivesBaseName + '-' + version + '.jar') |
46 | 69 | } |
47 | 70 |
|
48 | | -//task to export contents as jar |
49 | | -task exportJar(type: Copy) { |
| 71 | +task("renameLibraryJar", type: Copy, dependsOn: "clearLibraryJar") { |
50 | 72 | from('build/intermediates/bundles/release/') |
51 | | - into('release/') |
| 73 | + into('build/libs/') |
52 | 74 | include('classes.jar') |
53 | | - ///Give whatever name you want to give |
54 | | - rename('classes.jar', 'org.eclipse.paho.android.service.jar') |
| 75 | + rename('classes.jar', archivesBaseName + '-' + version + '.jar') |
55 | 76 | } |
56 | 77 |
|
57 | | -exportJar.dependsOn(deleteOldJar, build) |
| 78 | +task ("generateLibraryJar", type: Jar, dependsOn: "renameLibraryJar") { |
| 79 | + from('build/libs/' + archivesBaseName + '-' + version + '.jar') |
| 80 | +} |
| 81 | + |
| 82 | +publishing { |
| 83 | + publications { |
| 84 | + eclipsePublication(MavenPublication) { |
| 85 | + groupId 'org.eclipse.paho' |
| 86 | + artifact generateSourcesJar |
| 87 | + artifact generateLibraryJar |
| 88 | + artifact generateDebugJavaDocJar |
| 89 | + pom.withXml { |
| 90 | + asNode().appendNode('parent').appendNode('groupId', 'org.eclipse.paho').parent() |
| 91 | + .appendNode('artifactId', 'android-service-parent').parent() |
| 92 | + .appendNode('version', version) |
| 93 | + } |
| 94 | + } |
| 95 | + } |
| 96 | + |
| 97 | + repositories { |
| 98 | + maven { |
| 99 | + url "file:/${project.projectDir}/artifacts" |
| 100 | + } |
| 101 | + } |
| 102 | +} |
0 commit comments