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