1
1
apply plugin : ' com.android.library'
2
- apply plugin : ' maven'
2
+ apply plugin : ' maven-publish '
3
3
4
4
def safeExtGet (prop , fallback ) {
5
5
rootProject. ext. has(prop) ? rootProject. ext. get(prop) : fallback
@@ -50,54 +50,27 @@ android {
50
50
proguardFiles getDefaultProguardFile(' proguard-android.txt' ), ' proguard-rules.pro'
51
51
}
52
52
}
53
+ lintOptions {
54
+ abortOnError false
55
+ }
53
56
productFlavors {
54
57
}
55
58
}
56
59
57
60
dependencies {
58
61
implementation " com.facebook.react:react-native:${ safeExtGet('reactNativeVersion', '+')} "
59
- implementation ' com.squareup.okhttp3:okhttp:3.12.+'
60
- implementation ' com.squareup.okhttp3:logging-interceptor:3.12.+'
61
- implementation ' com.squareup.okhttp3:okhttp-urlconnection:3.12.+'
62
62
implementation ' org.apache.commons:commons-lang3:3.0'
63
63
}
64
64
65
- def configureReactNativePom (def pom ) {
66
- def packageJson = new groovy.json.JsonSlurper (). parseText(file(' ../package.json' ). text)
67
-
68
- pom. project {
69
- name packageJson. title
70
- artifactId packageJson. name
71
- version = packageJson. version
72
- group = " com.ReactNativeBlobUtil"
73
- description packageJson. description
74
- url packageJson. repository. baseUrl
75
-
76
- licenses {
77
- license {
78
- name packageJson. license
79
- url packageJson. repository. baseUrl + ' /blob/master/' + packageJson. licenseFilename
80
- distribution ' repo'
81
- }
82
- }
83
-
84
- developers {
85
- developer {
86
- id packageJson. author. username
87
- name packageJson. author. name
88
- }
89
- }
90
- }
91
- }
92
-
93
65
afterEvaluate { project ->
94
66
// some Gradle build hooks ref:
95
67
// https://www.oreilly.com/library/view/gradle-beyond-the/9781449373801/ch03.html
96
68
task androidJavadoc(type : Javadoc ) {
97
69
source = android. sourceSets. main. java. srcDirs
98
- classpath + = files(android. bootClasspath)
99
- classpath + = files(project. getConfigurations(). getByName(' compile' ). asList())
100
- include ' **/*.java'
70
+ classpath + = project. files(android. getBootClasspath(). join(File . pathSeparator))
71
+ classpath + = files(android. libraryVariants. collect { variant ->
72
+ variant. javaCompileProvider. get(). classpath. files
73
+ })
101
74
}
102
75
103
76
task androidJavadocJar(type : Jar , dependsOn : androidJavadoc) {
@@ -107,8 +80,7 @@ afterEvaluate { project ->
107
80
108
81
task androidSourcesJar(type : Jar ) {
109
82
classifier = ' sources'
110
- from android. sourceSets. main. java. srcDirs
111
- include ' **/*.java'
83
+ from android. sourceSets. main. java. sourceFiles
112
84
}
113
85
114
86
android. libraryVariants. all { variant ->
@@ -125,12 +97,41 @@ afterEvaluate { project ->
125
97
archives androidJavadocJar
126
98
}
127
99
128
- task installArchives(type : Upload ) {
129
- configuration = configurations. archives
130
- repositories. mavenDeployer {
131
- // Deploy to react-native-event-bridge/maven, ready to publish to npm
132
- repository url : " file://${ projectDir} /../android/maven"
133
- configureReactNativePom pom
100
+ publishing {
101
+ publications {
102
+ mavenJava(MavenPublication ) {
103
+ def packageJson = new groovy.json.JsonSlurper (). parseText(file(' ../package.json' ). text)
104
+
105
+ artifactId packageJson. name
106
+ groupId = " com.ReactNativeBlobUtil"
107
+ version = packageJson. version
108
+
109
+ pom {
110
+ name = packageJson. title
111
+ description = packageJson. description
112
+ url = packageJson. repository. baseUrl
113
+
114
+ licenses {
115
+ license {
116
+ name = packageJson. license
117
+ url = packageJson. repository. baseUrl + ' /blob/master/' + packageJson. licenseFilename
118
+ distribution = ' repo'
119
+ }
120
+ }
121
+
122
+ developers {
123
+ developer {
124
+ id = packageJson. author. username
125
+ name = packageJson. author. name
126
+ }
127
+ }
128
+ }
129
+ }
130
+ }
131
+ repositories {
132
+ maven {
133
+ url = " file://${ projectDir} /../android/maven"
134
+ }
134
135
}
135
136
}
136
137
}
0 commit comments