@@ -5,22 +5,22 @@ plugins {
55 alias(libs. plugins. kotlin. compose. compiler)
66 // alias(libs.plugins.devtools.ksp)
77 alias(libs. plugins. kotlin. kapt)
8- id ' maven-publish'
8+ id " maven-publish"
99}
1010
1111base {
12- archivesName = ' colorpicker_' + version_name
12+ archivesName = " colorpicker_${ libs.versions.app.version.name.get() } "
1313}
1414
1515android {
16- namespace ' io.syslogic.colorpicker'
17- buildToolsVersion = ' 35.0.0 '
18- compileSdk compile_sdk
16+ namespace " io.syslogic.colorpicker"
17+ buildToolsVersion = libs . versions . android . build . tools . get()
18+ compileSdk Integer . parseInt(libs . versions . android . compile . sdk . get())
1919 defaultConfig {
20- testInstrumentationRunner ' androidx.test.runner.AndroidJUnitRunner '
21- consumerProguardFiles " ${ project.rootDir } /proguard/consumer.pro "
22- targetSdk target_sdk
23- minSdk min_sdk
20+ minSdk Integer . parseInt(libs . versions . android . min . sdk . get())
21+ targetSdk Integer . parseInt(libs . versions . android . target . sdk . get())
22+ testInstrumentationRunner " androidx.test.runner.AndroidJUnitRunner "
23+ consumerProguardFiles " ${ project.getProjectDir().absolutePath } /consumer.pro "
2424 }
2525
2626 sourceSets. main. java. srcDirs = [ " src/main/java" ]
@@ -34,12 +34,6 @@ android {
3434 jvmTarget = 17
3535 }
3636
37- buildFeatures {
38- buildConfig true
39- dataBinding true
40- compose true
41- }
42-
4337 composeOptions {
4438 }
4539
@@ -49,6 +43,12 @@ android {
4943 stabilityConfigurationFile = rootProject. layout. projectDirectory. file(" stability_config.conf" )
5044 }
5145
46+ buildFeatures {
47+ buildConfig true
48+ dataBinding true
49+ compose true
50+ }
51+
5252 buildTypes {
5353 debug {
5454 // it breaks the data-binding, eg. when running ./gradlew :library:publishToMavenLocal
@@ -74,12 +74,14 @@ android {
7474 }
7575
7676 packagingOptions {
77- resources. pickFirsts. add(' META-INF/LGPL2.1' )
78- resources. pickFirsts. add(' META-INF/AL2.0' )
77+ resources. pickFirsts. add(" META-INF/LGPL2.1" )
78+ resources. pickFirsts. add(" META-INF/AL2.0" )
79+ // Unable to strip the following libraries, packaging them as they are:
80+ jniLibs. keepDebugSymbols. add(" **/libandroidx.graphics.path.so" )
7981 }
8082
8183 publishing {
82- singleVariant(' release' ) {
84+ singleVariant(" release" ) {
8385 withSourcesJar()
8486 withJavadocJar()
8587 }
@@ -103,7 +105,7 @@ dependencies {
103105 debugImplementation libs. bundles. androidx. compose. tooling
104106}
105107
106- tasks. register(' javadoc' , Javadoc ) { it ->
108+ tasks. register(" javadoc" , Javadoc ) { it ->
107109
108110 title = " Color Picker ${ android.defaultConfig.versionName} API"
109111 source = android. sourceSets. main. java. srcDirs
@@ -129,12 +131,12 @@ tasks.register('javadoc', Javadoc) { it ->
129131
130132 // extract AAR files
131133 configurations. implementation
132- .filter { it. name. endsWith(' .aar' ) }
134+ .filter { it. name. endsWith(" .aar" ) }
133135 .each { aar ->
134136 copy {
135137 from zipTree(aar)
136138 include " **/classes.jar"
137- into project. file(" build/tmp/aarsToJars/${ aar.name.replace(' .aar', '' )} /" )
139+ into project. file(" build/tmp/aarsToJars/${ aar.name.replace(" .aar", "" )} /" )
138140 }
139141 }
140142
@@ -154,36 +156,36 @@ javadoc.onlyIf {
154156 project. file(" build/intermediates/aar_main_jar" ). exists()
155157}
156158
157- tasks. register(' javadocJar' , Jar ) {
159+ tasks. register(" javadocJar" , Jar ) {
158160 dependsOn javadoc
159- archiveClassifier. set(' javadoc' )
161+ archiveClassifier. set(" javadoc" )
160162 from javadoc. destinationDir
161163}
162164
163- tasks. register(' sourcesJar' , Jar ) {
165+ tasks. register(" sourcesJar" , Jar ) {
164166 from android. sourceSets. main. java. srcDirs
165- archiveClassifier. set(' sources' )
167+ archiveClassifier. set(" sources" )
166168}
167169
168170artifacts {
169171 archives javadocJar
170172 archives sourcesJar
171173}
172174
173- group = ' io.syslogic'
174- version = version_name
175+ group = " io.syslogic"
176+ version = libs . versions . app . version . name . get()
175177
176178afterEvaluate {
177179 publishing {
178180 publications {
179181 release(MavenPublication ) {
180182 groupId = group
181- artifactId = ' androidx-colorpicker'
182- from components. getByName(' release' )
183- version = version_name
183+ artifactId = " androidx-colorpicker"
184+ from components. getByName(" release" )
185+ version = libs . versions . app . version . name . get()
184186 pom {
185- name = ' Color Picker'
186- description = ' A simple color-picker library for Android'
187+ name = " Color Picker"
188+ description = " A simple color-picker library for Android"
187189 url = " https://github.com/syslogic/${ artifactId} "
188190 scm {
189191 connection = " scm:git:git://github.com/syslogic/${ artifactId} .git"
0 commit comments