Common project and settings gradle convention plugin to bootstrap Kotlin JVM & Multiplatform projects.
$ curl -s "https://get.sdkman.io" | bash
$ sdk i java 21.0.4-zulu
$ sdk u java 21.0.4-zulu
$ ./gradlew build
For testing, a separate sandbox project is available with the plugin and version catalog applied in
settings.gradle.kts
. First publish the plugin to the local maven repository and then run the sandbox project.
$ ./gradlew publishToMavenLocal
$ ./gradlew -p sandbox :build
$ ./gradlew -p sandbox :dependencyUpdates
Push a new tag to trigger the release workflow and publish the plugin
to maven central. That's it 🎉.
The next version will be based on the semantic version scope (major
, minor
, patch
)
$ ./gradlew pushSemverTag "-Psemver.scope=patch"
# To see the current version
# ./gradlew v
# Print the new version
# ./gradlew printSemver "-Psemver.scope=patch"
Misc
-
Publishing
# Publish to local maven repository $ ./gradlew publishToMavenLocal $ tree ~/.m2/repository/dev/suresh/build/ # Publish the plugins to maven central $ ./gradlew publishPluginMavenPublicationToMavenCentralRepository # Publish the catalog to maven central $ ./gradlew :catalog:publishToMavenCentral $ ./gradlew :catalog:publishAndReleaseToMavenCentral