mirror of
https://github.com/BetterAndroid/FlexiUI.git
synced 2025-09-07 19:14:12 +08:00
chore: integrated maven publish plugin and some tweaks for publish
This commit is contained in:
@@ -1,6 +1,32 @@
|
||||
import com.vanniktech.maven.publish.JavadocJar
|
||||
import com.vanniktech.maven.publish.KotlinMultiplatform
|
||||
import com.vanniktech.maven.publish.MavenPublishBaseExtension
|
||||
|
||||
plugins {
|
||||
autowire(libs.plugins.kotlin.multiplatform) apply false
|
||||
autowire(libs.plugins.android.application) apply false
|
||||
autowire(libs.plugins.android.library) apply false
|
||||
autowire(libs.plugins.jetbrains.compose) apply false
|
||||
autowire(libs.plugins.maven.publish) apply false
|
||||
}
|
||||
|
||||
libraryProjects {
|
||||
afterEvaluate {
|
||||
configure<MavenPublishBaseExtension> {
|
||||
configure(KotlinMultiplatform(javadocJar = JavadocJar.Empty()))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fun libraryProjects(action: Action<in Project>) {
|
||||
val libraries = listOf(
|
||||
Libraries.FLEXIUI_CORE,
|
||||
Libraries.FLEXIUI_RESOURCES,
|
||||
)
|
||||
allprojects { if (libraries.contains(name)) action.execute(this) }
|
||||
}
|
||||
|
||||
object Libraries {
|
||||
const val FLEXIUI_CORE = "flexiui-core"
|
||||
const val FLEXIUI_RESOURCES = "flexiui-resources"
|
||||
}
|
@@ -2,9 +2,11 @@ plugins {
|
||||
autowire(libs.plugins.kotlin.multiplatform)
|
||||
autowire(libs.plugins.android.library)
|
||||
autowire(libs.plugins.jetbrains.compose)
|
||||
autowire(libs.plugins.maven.publish)
|
||||
}
|
||||
|
||||
group = property.project.groupName
|
||||
version = property.project.flexiui.core.version
|
||||
|
||||
kotlin {
|
||||
androidTarget {
|
||||
@@ -59,7 +61,7 @@ kotlin {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = property.project.groupName
|
||||
namespace = property.project.flexiui.core.namespace
|
||||
compileSdk = property.project.android.compileSdk
|
||||
|
||||
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
|
||||
|
1
flexiui-core/gradle.properties
Normal file
1
flexiui-core/gradle.properties
Normal file
@@ -0,0 +1 @@
|
||||
POM_ARTIFACT_ID=core
|
@@ -2,9 +2,11 @@ plugins {
|
||||
autowire(libs.plugins.kotlin.multiplatform)
|
||||
autowire(libs.plugins.android.library)
|
||||
autowire(libs.plugins.jetbrains.compose)
|
||||
autowire(libs.plugins.maven.publish)
|
||||
}
|
||||
|
||||
group = property.project.groupName
|
||||
version = property.project.flexiui.resources.version
|
||||
|
||||
kotlin {
|
||||
androidTarget {
|
||||
@@ -45,7 +47,7 @@ kotlin {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = property.project.groupName
|
||||
namespace = property.project.flexiui.resources.namespace
|
||||
compileSdk = property.project.android.compileSdk
|
||||
|
||||
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
|
||||
|
1
flexiui-resources/gradle.properties
Normal file
1
flexiui-resources/gradle.properties
Normal file
@@ -0,0 +1 @@
|
||||
POM_ARTIFACT_ID=resources
|
@@ -8,14 +8,35 @@ kotlin.mpp.applyDefaultHierarchyTemplate=false
|
||||
org.jetbrains.compose.experimental.uikit.enabled=true
|
||||
# Project Configuration
|
||||
project.name=FlexiUI
|
||||
project.description=A flexible and useful UI component library.
|
||||
project.url=https://github.com/BetterAndroid/FlexiUI
|
||||
project.groupName=com.highcapable.flexiui
|
||||
project.licence.name=Apache License 2.0
|
||||
project.licence.url=https://github.com/BetterAndroid/FlexiUI/blob/main/LICENSE
|
||||
project.sharedApp.packageName=${project.groupName}.demo
|
||||
project.flexiui-core.namespace=${project.groupName}.core
|
||||
project.flexiui-core.version=0.1.0-alpha01
|
||||
project.flexiui-resources.namespace=${project.groupName}.resources
|
||||
project.flexiui-resources.version=0.1.0-alpha01
|
||||
project.samples.shared.namespace=${project.groupName}.shared
|
||||
project.samples.desktopApp.groupName=${project.groupName}.demo
|
||||
project.samples.desktopApp.version=universal
|
||||
project.samples.androidApp.packageName=${project.groupName}.demo
|
||||
project.samples.androidApp.versionName=universal
|
||||
project.samples.androidApp.versionCode=1
|
||||
project.android.compileSdk=34
|
||||
project.android.minSdk=21
|
||||
project.android.targetSdk=34
|
||||
project.androidApp.versionName=1.0.0
|
||||
project.androidApp.versionCode=1
|
||||
# Maven Publish Configuration
|
||||
SONATYPE_HOST=S01
|
||||
RELEASE_SIGNING_ENABLED=true
|
||||
# Maven POM Configuration
|
||||
POM_NAME=FlexiUI
|
||||
POM_DESCRIPTION=A flexible and useful UI component library.
|
||||
POM_URL=https://github.com/BetterAndroid/FlexiUI
|
||||
POM_LICENSE_NAME=Apache License 2.0
|
||||
POM_LICENSE_URL=https://github.com/BetterAndroid/FlexiUI/blob/main/LICENSE
|
||||
POM_LICENSE_DIST=repo
|
||||
POM_SCM_URL=https://github.com/BetterAndroid/FlexiUI
|
||||
POM_SCM_CONNECTION=scm:git:git://github.com/BetterAndroid/FlexiUI.git
|
||||
POM_SCM_DEV_CONNECTION=scm:git:ssh://github.com/BetterAndroid/FlexiUI.git
|
||||
POM_DEVELOPER_ID=0
|
||||
POM_DEVELOPER_NAME=fankes
|
||||
POM_DEVELOPER_EMAIL=qzmmcn@163.com
|
||||
POM_DEVELOPER_URL=https://github.com/fankes
|
@@ -21,6 +21,9 @@ plugins:
|
||||
com.android.library:
|
||||
alias: android-library
|
||||
version-ref: android-application
|
||||
com.vanniktech.maven.publish:
|
||||
alias: maven-publish
|
||||
version: 0.26.0
|
||||
|
||||
libraries:
|
||||
# Use a placeholder for the alpha / beta compose version
|
||||
|
@@ -4,8 +4,6 @@ plugins {
|
||||
autowire(libs.plugins.jetbrains.compose)
|
||||
}
|
||||
|
||||
group = property.project.sharedApp.packageName
|
||||
|
||||
kotlin {
|
||||
androidTarget()
|
||||
jvmToolchain(17)
|
||||
@@ -19,7 +17,7 @@ kotlin {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = property.project.sharedApp.packageName
|
||||
namespace = property.project.samples.androidApp.packageName
|
||||
compileSdk = property.project.android.compileSdk
|
||||
|
||||
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
|
||||
@@ -27,11 +25,11 @@ android {
|
||||
sourceSets["main"].resources.srcDirs("src/commonMain/resources")
|
||||
|
||||
defaultConfig {
|
||||
applicationId = property.project.sharedApp.packageName
|
||||
applicationId = property.project.samples.androidApp.packageName
|
||||
minSdk = property.project.android.minSdk
|
||||
targetSdk = property.project.android.targetSdk
|
||||
versionName = property.project.androidApp.versionName
|
||||
versionCode = property.project.androidApp.versionCode
|
||||
versionName = property.project.samples.androidApp.versionName
|
||||
versionCode = property.project.samples.androidApp.versionCode
|
||||
}
|
||||
buildTypes {
|
||||
release {
|
||||
|
@@ -3,7 +3,8 @@ plugins {
|
||||
autowire(libs.plugins.jetbrains.compose)
|
||||
}
|
||||
|
||||
group = property.project.sharedApp.packageName
|
||||
group = property.project.samples.desktopApp.groupName
|
||||
version = property.project.samples.desktopApp.version
|
||||
|
||||
kotlin {
|
||||
jvm("desktop")
|
||||
@@ -24,6 +25,6 @@ java {
|
||||
|
||||
compose.desktop {
|
||||
application {
|
||||
mainClass = "${property.project.sharedApp.packageName}.MainKt"
|
||||
mainClass = "$group.MainKt"
|
||||
}
|
||||
}
|
@@ -4,8 +4,6 @@ plugins {
|
||||
autowire(libs.plugins.jetbrains.compose)
|
||||
}
|
||||
|
||||
group = property.project.sharedApp.packageName
|
||||
|
||||
kotlin {
|
||||
androidTarget()
|
||||
jvm("desktop")
|
||||
@@ -25,19 +23,19 @@ kotlin {
|
||||
dependencies {
|
||||
implementation(compose.runtime)
|
||||
implementation(compose.foundation)
|
||||
api(com.highcapable.betterandroid.compose.multiplatform)
|
||||
api(projects.flexiuiCore)
|
||||
api(com.highcapable.betterandroid.compose.multiplatform)
|
||||
}
|
||||
}
|
||||
val androidMain by getting {
|
||||
dependencies {
|
||||
api(com.highcapable.betterandroid.ui.component)
|
||||
api(com.highcapable.betterandroid.ui.extension)
|
||||
api(com.highcapable.betterandroid.system.extension)
|
||||
api(androidx.core.core.ktx)
|
||||
api(androidx.appcompat.appcompat)
|
||||
api(androidx.activity.activity)
|
||||
api(androidx.activity.activity.compose)
|
||||
api(com.highcapable.betterandroid.ui.component)
|
||||
api(com.highcapable.betterandroid.ui.extension)
|
||||
api(com.highcapable.betterandroid.system.extension)
|
||||
}
|
||||
}
|
||||
val desktopMain by getting {
|
||||
@@ -58,7 +56,7 @@ kotlin {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = property.project.sharedApp.packageName
|
||||
namespace = property.project.samples.shared.namespace
|
||||
compileSdk = property.project.android.compileSdk
|
||||
|
||||
sourceSets["main"].manifest.srcFile("src/androidMain/AndroidManifest.xml")
|
||||
|
@@ -14,7 +14,13 @@ sweetDependency {
|
||||
isUseDependencyResolutionManagement = false
|
||||
}
|
||||
sweetProperty {
|
||||
global { sourcesCode { className = "FlexiUI" } }
|
||||
global {
|
||||
sourcesCode {
|
||||
className = "FlexiUI"
|
||||
includeKeys("^project\\..*\$".toRegex())
|
||||
isEnableRestrictedAccess = true
|
||||
}
|
||||
}
|
||||
rootProject { all { isEnable = false } }
|
||||
project(
|
||||
":samples",
|
||||
|
Reference in New Issue
Block a user