Getting started
Latest stable Based on Dependencies release 2.0.0
Use the stable 2.0.0 BOM from Maven Central, import it once, and omit versions from managed Bluetape4k artifacts.
Gradle with the BOM
Section titled “Gradle with the BOM”repositories { mavenCentral()}
dependencies { implementation(platform("io.github.bluetape4k:bluetape4k-dependencies:2.0.0")) implementation("io.github.bluetape4k:bluetape4k-core") implementation("io.github.bluetape4k:bluetape4k-coroutines")}The platform is the only place where the ecosystem BOM version is declared. A child library receives its version from the imported BOM; do not add a second version or a timestamped Maven version to the dependency declaration.
Maven with the BOM
Section titled “Maven with the BOM”Import the BOM in dependencyManagement:
<dependencyManagement> <dependencies> <dependency> <groupId>io.github.bluetape4k</groupId> <artifactId>bluetape4k-dependencies</artifactId> <version>2.0.0</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies></dependencyManagement>
<dependencies> <dependency> <groupId>io.github.bluetape4k</groupId> <artifactId>bluetape4k-core</artifactId> </dependency></dependencies>Add the catalog when you build Bluetape4k modules
Section titled “Add the catalog when you build Bluetape4k modules”The catalog is a checked-out source file, not a Maven artifact replacement:
dependencyResolutionManagement { versionCatalogs { create("bt4k") { from(files("../bluetape4k-dependencies/gradle/libs.versions.toml")) } }}plugins { alias(bt4k.plugins.kotlin.jvm)}
dependencies { implementation(platform("io.github.bluetape4k:bluetape4k-dependencies:2.0.0")) implementation(bt4k.bluetape4k.core) implementation(bt4k.bluetape4k.coroutines)}Pin the catalog checkout to an immutable commit in CI. The central catalog ref and the published BOM are separate provenance: a catalog commit does not prove that a Maven artifact is available.
First checks
Section titled “First checks”- Resolve Maven Central and confirm the BOM POM is available.
- Run the representative build with the BOM and one versionless Bluetape4k module.
- Confirm the catalog checkout is the intended immutable release commit or catalog train tag.
Use snapshot consumption only when intentionally testing a later development line.