IMPORTANT: Developer documentation for the current development branch. This content is unreleased, may change without notice, and must not be treated as Buildish release documentation.
Getting started
Use Gradle 9.1+ and Java 17+ in the build consuming this plugin.
Apply the settings plugin
In settings.gradle.kts, choose a plugin version available from your configured
plugin repositories. Replace <version> with that version:
1plugins {
2 id("org.buildish.atr-maven-bundle.gradle-plugin") version "<version>"
3}
4rootProject.name = "my-library"
For Groovy settings, use settings.gradle:
1plugins {
2 id 'org.buildish.atr-maven-bundle.gradle-plugin' version '<version>'
3}
4rootProject.name = 'my-library'
Apply this plugin in settings. The maven-publish plugin and publication
configuration belong in each publishing project’s build script.
Configure a Maven publication
For example, a Java library’s build.gradle.kts can contain:
1plugins {
2 `java-library`
3 `maven-publish`
4}
5group = "org.example"
6version = "1.0"
7publishing {
8 publications {
9 create<MavenPublication>("main") { from(components["java"]) }
10 }
11}
Each actual Maven publication is included automatically, including publications on the root project. Projects without Maven publications need no opt-out. See publication selection for exclusions.
Create a first bundle
For an unsigned local trial, disable the default signature-presence requirement:
1./gradlew -PatrMavenBundle.requireSignatures=false :atrCentralArchive
With the example name and version, this creates
build/atr-maven-bundle/central/my-library-1.0.zip. The ZIP starts at the Maven
repository root and contains the native publication files plus their checksums.
The plugin uses private local export repositories; this command does not publish
to your configured remote repositories or Maven local.
For a release with existing signatures, retain the default presence check:
1./gradlew :atrCentralArchive
To generate missing signatures, first configure root signing, then run:
1./gradlew :prepareAtrMavenBundle --sign-missing :atrCentralArchive
Select other outputs
Request several tasks together to share one preparation and signing pass:
1./gradlew :atrCentralArchive :atrNjordArchive :atrNjordTransportableFiles
The output reference describes every task and layout. Producing a bundle does not upload it or establish acceptance by a remote service.