chore: migrate build script from groovy to kts

- using SweetDependency, SweetProperty
- using new maven publish function
- update gradle and dependencies
This commit is contained in:
2023-09-22 17:00:04 +08:00
parent 7f15ad57d9
commit fd79c4ef0d
11 changed files with 232 additions and 271 deletions

View File

@@ -1,23 +1,30 @@
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Compiler Configuration
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
# org.gradle.parallel=true
# AndroidX package structure to make it clearer which packages are bundled with the
# Android operating system, and which are packaged with your app's APK
# https://developer.android.com/topic/libraries/support-library/androidx-rn
android.useAndroidX=true
# Kotlin code style for this project: "official" or "obsolete":
android.nonTransitiveRClass=true
kotlin.code.style=official
# Enables namespacing of each library's R class so that its R class includes only the
# resources declared in the library itself and none from the library's dependencies,
# thereby reducing the size of the R class for that library
android.nonTransitiveRClass=true
kotlin.incremental.useClasspathSnapshot=true
# Project Configuration
project.name=YukiReflection
project.description=An efficient Reflection API for Java and Android built in Kotlin.
project.url=https://github.com/fankes/YukiReflection
project.groupName=com.highcapable.yukireflection
project.yukireflection-core.moduleName=api
project.yukireflection-core.version="1.0.2"
project.yukireflection-core.kotlin-optIn.YukiPrivateApi=${project.groupName}.annotation.YukiPrivateApi
project.licence.name=MIT
project.licence.url=https://github.com/fankes/YukiReflection/blob/master/LICENSE
project.developer.id="0"
project.developer.name=fankes
project.developer.email=qzmmcn@163.com
project.android.compileSdk=34
project.android.minSdk=21
project.android.targetSdk=34
project.samples-demo-android.packageName=${project.groupName}.demo_app
project.samples-demo-android.versionName=universal
project.samples-demo-android.versionCode=1
project.samples-demo-jvm.groupName=${project.groupName}.demo_jvm
# Maven Publish Configuration
maven.publish.scm.connection=scm:git:git://github.com/fankes/YukiReflection.git
maven.publish.scm.developerConnection=scm:git:ssh://github.com/fankes/YukiReflection.git
maven.publish.scm.url=https://github.com/fankes/YukiReflection