Basic project gradle configuration / setup
plugins {
id("com.hibernix.tools.setup") version "0.1.0"
}
platforms {
// all platform targets
/* if optional mainClass is defined, it will be set up as runnable java app and will bundle all dependencies into the (fat)jar */
jvm(mainClass = "com.hibernix.PathToMainClassKt")
android { /* custom configuration in android extension context */ }
ios()
macos()
linux()
tvos()
watchos()
js()
}
features {
serialization() // modules that require kotlinx.serialization
detekt() // root and modules
dokka() // for root and all modules that require documentation
publish() // for all modules that should be published
dependencyUpdates() // only for root
}
These gradle properties are supported by the plugin:
# mandatory base project properties
project.name=Project Name
project.group=com.hibernix.group
project.description=Project Description
project.version=0.1.0
# overrides the default versions of plugin
project.versions.kotlin=...
project.versions.coroutines=...
project.versions.detekt=...
project.versions.dokka=...
project.versions.dependencyUpdates=...
# possible android properties
project.android.minSdk=21
project.android.compileSdk=34
project.android.targetSdk=34