1+ apply plugin : ' maven'
2+ apply plugin : ' signing'
3+
4+ def sonatypeRepositoryUrl
5+ if (isReleaseBuild()) {
6+ println ' RELEASE BUILD'
7+ sonatypeRepositoryUrl = hasProperty(' RELEASE_REPOSITORY_URL' ) ? RELEASE_REPOSITORY_URL
8+ : " https://oss.sonatype.org/service/local/staging/deploy/maven2/"
9+ } else {
10+ println ' DEBUG BUILD'
11+ sonatypeRepositoryUrl = hasProperty(' SNAPSHOT_REPOSITORY_URL' ) ? SNAPSHOT_REPOSITORY_URL
12+ : " https://oss.sonatype.org/content/repositories/snapshots/"
13+ }
14+
15+ def getRepositoryUsername () {
16+ return hasProperty(' nexusUsername' ) ? nexusUsername : " "
17+ }
18+
19+ def getRepositoryPassword () {
20+ return hasProperty(' nexusPassword' ) ? nexusPassword : " "
21+ }
22+
23+ afterEvaluate { project ->
24+ uploadArchives {
25+ repositories {
26+ mavenDeployer {
27+ beforeDeployment { MavenDeployment deployment -> signing. signPom(deployment) }
28+
29+ pom. artifactId = POM_ARTIFACT_ID
30+
31+ repository(url : sonatypeRepositoryUrl) {
32+ authentication(userName : getRepositoryUsername(), password : getRepositoryPassword())
33+ }
34+
35+ pom. project {
36+ name POM_NAME
37+ packaging POM_PACKAGING
38+ description POM_DESCRIPTION
39+ url POM_URL
40+
41+ scm {
42+ url POM_SCM_URL
43+ connection POM_SCM_CONNECTION
44+ developerConnection POM_SCM_DEV_CONNECTION
45+ }
46+
47+ licenses {
48+ license {
49+ name POM_LICENCE_NAME
50+ url POM_LICENCE_URL
51+ distribution POM_LICENCE_DIST
52+ }
53+ }
54+
55+ developers {
56+ developer {
57+ id POM_DEVELOPER_ID
58+ name POM_DEVELOPER_NAME
59+ }
60+ }
61+ }
62+ }
63+ }
64+ }
65+
66+ signing {
67+ required { isReleaseBuild() && gradle. taskGraph. hasTask(" uploadArchives" ) }
68+ sign configurations. archives
69+ }
70+
71+ task androidJavadocs(type : Javadoc ) {
72+ source = android. sourceSets. main. java. sourceFiles
73+ }
74+
75+ task androidJavadocsJar(type : Jar ) {
76+ classifier = ' javadoc'
77+ // basename = artifact_id
78+ from androidJavadocs. destinationDir
79+ }
80+
81+ task androidSourcesJar(type : Jar ) {
82+ classifier = ' sources'
83+ // basename = artifact_id
84+ from android. sourceSets. main. java. sourceFiles
85+ }
86+
87+ artifacts {
88+ // archives packageReleaseJar
89+ archives androidSourcesJar
90+ archives androidJavadocsJar
91+ }
92+ }
0 commit comments