Skip to content

Gradle plugin setting up standard conventions for Xemantic's projects

License

Notifications You must be signed in to change notification settings

xemantic/xemantic-conventions

Repository files navigation

xemantic-gradle-plugin

Sets up standard gradle conventions for Xemantic's

Maven Central Version GitHub Release Date license

GitHub Actions Workflow Status GitHub branch check runs GitHub commits since latest release GitHub last commit

GitHub contributors GitHub commit activity GitHub code size in bytes GitHub Created At kotlin version discord users online Bluesky

Why?

Setting up a gradle project for a Kotlin multiplatform library can be hassle. There are so many repetitive pieces of configuration which are easy to mismanage and omit. There are also special workarounds required to publish such libraries to maven central. This plugin is attempting to centralize all of that.

Usage

To you lib.versions.toml (located in the gradle dir) add:

[versions]

# your other versions ...
xemanticConventionsPlugin = "0.3.0"

[libraries]
# your libraries ...

[plugins]
# your other plugins ...
xemantic-conventions = { id = "com.xemantic.gradle.xemantic-conventions", version.ref = "xemanticConventionsPlugin" }

Then, in your build.gradle.kts, you can specify:

plugins {
    alias(libs.plugins.kotlin.multiplatform) // or jvm
    alias(libs.plugins.kotlin.plugin.power.assert) // optional
    alias(libs.plugins.kotlinx.binary.compatibility.validator) // optional
    alias(libs.plugins.dokka)
    alias(libs.plugins.versions) // optional
    `maven-publish`
    signing
    alias(libs.plugins.jreleaser)
    alias(libs.plugins.xemantic.conventions)
}

About

Gradle plugin setting up standard conventions for Xemantic's projects

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Languages