1+ // ./gradlew clean build generateRelease
2+ apply plugin : ' maven'
3+
4+ def groupId = project. PUBLISH_GROUP_ID
5+ def artifactId = project. PUBLISH_ARTIFACT_ID
6+ def version = project. PUBLISH_VERSION
7+
8+ def localReleaseDest = " ${ buildDir} /release/${ version} "
9+
10+ task androidJavadocs (type : Javadoc ) {
11+ failOnError = false
12+ source = android. sourceSets. main. java. srcDirs
13+ ext. androidJar = " ${ android.sdkDirectory} /platforms/${ android.compileSdkVersion} /android.jar"
14+ classpath + = files(ext. androidJar)
15+ }
16+
17+ task androidJavadocsJar (type : Jar , dependsOn : androidJavadocs) {
18+ classifier = ' javadoc'
19+ from androidJavadocs. destinationDir
20+ }
21+
22+ task androidSourcesJar (type : Jar ) {
23+ classifier = ' sources'
24+ from android. sourceSets. main. java. srcDirs
25+ }
26+
27+ uploadArchives {
28+ repositories. mavenDeployer {
29+ pom. groupId = groupId
30+ pom. artifactId = artifactId
31+ pom. version = version
32+ // Add other pom properties here if you want (developer details / licenses)
33+ repository(url : " file://${ localReleaseDest} " )
34+ }
35+ }
36+
37+ task zipRelease (type : Zip ) {
38+ from localReleaseDest
39+ destinationDir buildDir
40+ archiveName " release-${ version} .zip"
41+ }
42+
43+ task generateRelease {
44+ doLast {
45+ println " Release ${ version} can be found at ${ localReleaseDest} /"
46+ println " Release ${ version} zipped can be found ${ buildDir} /release-${ version} .zip"
47+ }
48+ }
49+
50+ generateRelease. dependsOn(uploadArchives)
51+ generateRelease. dependsOn(zipRelease)
52+
53+
54+ artifacts {
55+ archives androidSourcesJar
56+ archives androidJavadocsJar
57+ }
0 commit comments