Gradle Maven Publish Plugin Versions Save

A Gradle plugin that publishes your Android and Kotlin libraries, including sources and javadoc, to Maven Central or any other Nexus instance.

0.28.0

1 month ago
  • Added support for publishing through the new Central Portal. To use this use the CENTRAL_PORTAL option when specifying the Sonatype host.
  • For Kotlin Multiplatform the main plugin will now automatically publish the release variant if the project has an Android target and no variant was explicitly specified through the Kotlin Gradle DSL.
  • Support specifying the Android variants to publish in KotlinMultiplatform(...).
  • Updated minimum supported Gradle, Android Gradle Plugin and Kotlin versions.
  • Removed support for the deprecated Kotlin/JS plugin.
  • Removed the deprecated closeAndReleaseRepository task. Use releaseRepository, which is functionally equivalent, instead.

Minimum supported versions

  • JDK 11
  • Gradle 8.1
  • Android Gradle Plugin 8.0.0
  • Kotlin Gradle Plugin 1.9.20

Compatibility tested up to

  • JDK 21
  • Gradle 8.6
  • Gradle 8.7-rc-3
  • Android Gradle Plugin 8.3.0
  • Android Gradle Plugin 8.4.0-alpha13
  • Kotlin Gradle Plugin 1.9.23
  • Kotlin Gradle Plugin 2.0.0-Beta4

Configuration cache status

Configuration cache is generally supported, except for:

  • Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
  • Dokka does not support configuration cache

0.27.0

4 months ago
  • Added new publishing related tasks
    • releaseRepository releases a staging repository at the end of the build and can be executed in the same build as the publishing task. This allows having automatic releases without permanently enabling them.
    • publishToMavenCentral as alias for running publishAllPublicationsToMavenCentralRepository.
    • publishAndReleaseToMavenCentral as alias for running both of the above.
    • For more information checkout the docs.
  • It is now possible to only pass a subset of the parameters to coordinates(...) and leave the others at their default value. Thanks to @sschuberth for the contribution.
  • Fixed java-test-fixture projects being broken with Gradle 8.6.
  • Deprecated closeAndReleaseRepository in favor of releaseRepository.

Minimum supported versions

  • JDK 11
  • Gradle 7.6
  • Android Gradle Plugin 7.4.0
  • Kotlin Gradle Plugin 1.8.20

Compatibility tested up to

  • JDK 21
  • Gradle 8.5
  • Gradle 8.6-rc-1
  • Android Gradle Plugin 8.2.1
  • Android Gradle Plugin 8.3.0-beta01
  • Android Gradle Plugin 8.4.0-alpha03
  • Kotlin Gradle Plugin 1.9.22
  • Kotlin Gradle Plugin 2.0.0-Beta2

Configuration cache status

When using Gradle 8.1 or newer configuration cache is generally supported.

Exceptions to that are:

  • Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
  • Dokka does not support configuration cache

0.26.0

4 months ago
  • It's now supported to call configure(Platform) from the main plugin to modify what is getting published. Check out the docs for more details
  • The base plugin now has a configureBasedOnAppliedPlugins DSL method to allow applying the default configure logic of the main plugin.
  • Calling configure(Platform) now validates that the required plugins are applied (e.g. Android Gradle Plugin for Android projects).
  • It's now possible to disable source publishing for KMP projects.
  • Fixed an issue which would cause the javadoc jar task to be registered multiple times for Gradle plugin projects with more than one publication. Thanks to @autonomousapps for the fix.
  • Publishing Kotlin/JS projects has been deprecated and will be removed in the next release, because the Kotlin/JS plugin has been deprecated.
  • The internal task to create a javadoc jar for certain project types has been renamed from simpleJavadocJar to plainJavadocJar. Thanks to @sschuberth.

Minimum supported versions

  • JDK 11
  • Gradle 7.6
  • Android Gradle Plugin 7.4.0
  • Kotlin Gradle Plugin 1.8.20

Compatibility tested up to

  • JDK 21
  • Gradle 8.5
  • Android Gradle Plugin 8.2.0
  • Android Gradle Plugin 8.3.0-alpha17
  • Kotlin Gradle Plugin 1.9.21
  • Kotlin Gradle Plugin 2.0.0-Beta1

Configuration cache status

When using Gradle 8.1 or newer configuration cache is generally supported.

Exceptions to that are:

  • Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
  • Dokka does not support configuration cache

0.25.3

10 months ago
  • Gradle 8.2: Fix error for projects that use the java-test-fixtures plugin.
  • Fix issue for Kotlin Multiplatform projects when running tests and having signing enabled.

0.25.2

1 year ago
  • Fix javadoc jar being empty when using dokka.

0.25.1

1 year ago
  • Fix snapshot publishing being broken.

0.25.0

1 year ago
  • The createStagingRepository task now uses the worker API which allows the project to built in parallel to the creation of the staging repository.
  • Fix incompatibility with Kotlin 1.8.20-Beta for Kotlin/JS projects. The Kotlin/JS plugin is now taking care of creating the sources jar on its own. Because of this the base plugin won't allow disabling sources jar creation for Kotlin/JS projects anymore starting with 1.8.20. The KotlinJs constructor with a sourcesJar parameter has been deprecated.
  • Fix incompatibility with Gradle 8.1 for java-test-fixtures projects
  • Fix incompatibility with com.gradle.plugin-publish 1.0.0 and 1.1.0
  • New minimum supported versions:
    • Gradle 7.4
    • Android Gradle Plugin 7.3.0
    • Kotlin Gradle Plugin 1.7.0
    • com.gradle.plugin-publish 1.0.0
  • Note: Starting with Kotlin 1.8.20-Beta the common sources jar for multiplatform projects will only contain the sources of the common source set instead of containing the sources from all source sets.

Configuration cache status

Configuration cache is supported starting with Gradle 7.6+ except for:

  • Builds with enabled signing, will be resolved in Gradle 8.1.
  • Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
  • Kotlin Multiplatform projects, blocked by KT-49933.

0.24.0

1 year ago
  • Support arbitrary Sonatype hosts instead of just oss.sonatype.org and s01.oss.sonatype.org.
  • Support adjusting timeouts for Sonatype related requests and operations. See docs
  • Internal change on how the sources jar is created.

0.23.2

1 year ago
  • Fix signing when using Gradle 8.0.
  • Finding a matching staging profile in Sonatype is more lenient. If there is just one that one will always be used. The plugin will also fallback to any staging profile that has a matching prefix with the group id.
  • As a workaround for an issue in Gradle that causes invalid module metadata for java-test-fixtures projects, project.group and project.version are now being set again for those projects. #490

0.23.1

1 year ago