Releases: vanniktech/gradle-maven-publish-plugin
0.36.0
BREAKING
- Updated minimum supported JDK, Gradle, Android Gradle Plugin and Kotlin versions.
- Removed support for Dokka v1, it's now required to use Dokka in v2 mode.
- Mark
DirectorySignatureTypeinternal.
Behavior changes
validateDeploymentnow has theDeploymentValidationenum as type instead of being a boolean. The default
is now to just wait for theVALIDATEDstate. The previous behavior can be achieved by setting it toPUBLISHED.
NONEcan be used for disabling the validation completely.- When calling
configure(...)manually to configure what to publish and not passingjavadocJarexplicity,
the plugin now defaults to publishing an empty javadoc jar.
Features
- Android projects now support using Dokka for javadoc creation, this will happen automatically
when using the default options and the Dokka plugin is applied to the project. - Added consistent
JavadocJarandSourcesJaroptions toconfigureBasedOnAppliedPluginsand to all
applicable project types that can be passed toconfigure. The previousBooleanbased versions have
been deprecated. - When enabling Maven Central publishing through the DSL, the
mavenCentralDeploymentValidationand
mavenCentralAutomaticPublishingare used for the default values of the 2 parameters when they are not passed
explicitly. This allows to more easily override them in certain environments. - When isolated projects is enabled the module/project specific
gradle.propertiesfiles are now considered in
the same way they are when isolated projects is disabled.
Improvements
- Better error message when Maven Central credentials are missing.
Minimum supported versions
- JDK 17
- Gradle 9.0.0
- Android Gradle Plugin 8.13.0
- Kotlin Gradle Plugin 2.2.0
Compatibility tested up to
- JDK 25
- Gradle 9.3.0
- Gradle 9.4.0-milestone-4
- Android Gradle Plugin 8.13.2
- Android Gradle Plugin 9.0.0
- Android Gradle Plugin 9.1.0-alpha05
- Kotlin Gradle Plugin 2.3.0
- Kotlin Gradle Plugin 2.3.20-Beta1
0.36.0-rc2
BREAKING
- Updated minimum supported JDK, Gradle, Android Gradle Plugin and Kotlin versions.
- Removed support for Dokka v1, it's now required to use Dokka in v2 mode.
- Mark
DirectorySignatureTypeinternal.
Behavior changes
validateDeploymentnow has theDeploymentValidationenum as type instead of being a boolean. The default
is now to just wait for theVALIDATEDstate. The previous behavior can be achieved by setting it toPUBLISHED.
NONEcan be used for disabling the validation completely.- When calling
configure(...)manually to configure what to publish and not passingjavadocJarexplicity,
the plugin now defaults to publishing an empty javadoc jar.
Features
- Android projects now support using Dokka for javadoc creation, this will happen automatically
when using the default options and the Dokka plugin is applied to the project. - Added consistent
JavadocJarandSourcesJaroptions toconfigureBasedOnAppliedPluginsand to all
applicable project types that can be passed toconfigure. The previousBooleanbased versions have
been deprecated. - When enabling Maven Central publishing through the DSL, the
mavenCentralDeploymentValidationand
mavenCentralAutomaticPublishingare used for the default values of the 2 parameters when they are not passed
explicitly. This allows to more easily override them in certain environments. - When isolated projects is enabled the module/project specific
gradle.propertiesfiles are now considered in
the same way they are when isolated projects is disabled.
Improvements
- Better error message when Maven Central credentials are missing.
Minimum supported versions
- JDK 17
- Gradle 9.0.0
- Android Gradle Plugin 8.13.0
- Kotlin Gradle Plugin 2.2.0
Compatibility tested up to
- JDK 25
- Gradle 9.3.0
- Gradle 9.4.0-milestone-4
- Android Gradle Plugin 8.13.2
- Android Gradle Plugin 9.0.0
- Android Gradle Plugin 9.1.0-alpha05
- Kotlin Gradle Plugin 2.3.0
- Kotlin Gradle Plugin 2.3.20-Beta1
0.36.0-rc1
BREAKING
- Updated minimum supported JDK, Gradle, Android Gradle Plugin and Kotlin versions.
- Removed support for Dokka v1, it's now required to use Dokka in v2 mode.
- Mark
DirectorySignatureTypeinternal.
Behavior changes
validateDeploymentnow has theDeploymentValidationenum as type instead of being a boolean. The default
is now to just wait for theVALIDATEDstate. The previous behavior can be achieved by setting it toPUBLISHED.
NONEcan be used for disabling the validation completely.- When calling
configure(...)manually to configure what to publish and not passingjavadocJarexplicity,
the plugin now defaults to publishing an empty javadoc jar.
Features
- Android projects now support using Dokka for javadoc creation, this will happen automatically
when using the default options and the Dokka plugin is applied to the project. - Added consistent
JavadocJarandSourcesJaroptions toconfigureBasedOnAppliedPluginsand to all
applicable project types that can be passed toconfigure. The previousBooleanbased versions have
been deprecated. - When enabling Maven Central publishing through the DSL, the
mavenCentralDeploymentValidationand
mavenCentralAutomaticPublishingare used for the default values of the 2 parameters when they are not passed
explicitly. This allows to more easily override them in certain environments. - When isolated projects is enabled the module/project specific
gradle.propertiesfiles are now considered in
the same way they are when isolated projects is disabled.
Improvements
- Better error message when Maven Central credentials are missing.
Minimum supported versions
- JDK 17
- Gradle 9.0.0
- Android Gradle Plugin 8.13.0
- Kotlin Gradle Plugin 2.2.0
Compatibility tested up to
- JDK 25
- Gradle 9.3.0
- Gradle 9.4.0-milestone-4
- Android Gradle Plugin 8.13.2
- Android Gradle Plugin 9.0.0
- Android Gradle Plugin 9.1.0-alpha05
- Kotlin Gradle Plugin 2.3.0
- Kotlin Gradle Plugin 2.3.20-Beta1
0.35.0
- Add support for publishing Kotlin Multiplatform libraries that use
com.android.kotlin.multiplatform.library. - Add support for validating deployments to Central Portal
- Raise minimum Gradle version to 8.13
- Raise minimum Android Gradle Plugin version to 8.2.2
- Do not unconditionally disable DocLint
- Fail publishing if
SONATYPE_HOSTis not set toCENTRAL_PORTAL. - Fix misleading error message when Android library variant is not found.
- Downgrade transitive OkHttp version.
- Don't check project heirarchy for POM properties when Isolated proejcts is enabled.
Thanks to @joshfriend, @Flowdalic and @Goooler for their contributions to this release.
Minimum supported versions
- JDK 11
- Gradle 8.13
- Android Gradle Plugin 8.2.2
- Kotlin Gradle Plugin 1.9.20
Compatibility tested up to
- JDK 24
- Gradle 9.2.0
- Gradle 9.3.0-milestone-1
- Android Gradle Plugin 8.13.1
- Android Gradle Plugin 9.0.0-alpha14
- Kotlin Gradle Plugin 2.2.21
- Kotlin Gradle Plugin 2.3.0-Beta2
0.35.0-rc1
- Add support for publishing Kotlin Multiplatform libraries that use
com.android.kotlin.multiplatform.library. - Add support for validating deployments to Central Portal
- Raise minimum Gradle version to 8.13
- Raise minimum Android Gradle Plugin version to 8.2.2
- Do not unconditionally disable DocLint
- Fail publishing if
SONATYPE_HOSTis not set toCENTRAL_PORTAL. - Fix misleading error message when Android library variant is not found.
- Downgrade transitive OkHttp version.
- Don't check project heirarchy for POM properties when Isolated proejcts is enabled.
Thanks to @joshfriend, @Flowdalic and @Goooler for their contributions to this release.
Minimum supported versions
- JDK 11
- Gradle 8.13
- Android Gradle Plugin 8.2.2
- Kotlin Gradle Plugin 1.9.20
Compatibility tested up to
- JDK 24
- Gradle 9.2.0
- Gradle 9.3.0-milestone-1
- Android Gradle Plugin 8.13.1
- Android Gradle Plugin 9.0.0-alpha14
- Kotlin Gradle Plugin 2.2.21
- Kotlin Gradle Plugin 2.3.0-Beta2
0.34.0
- Added configuration cache support for publishing.
- Removed support for publishing through Sonatype OSSRH since it has been shut down. See the
0.33.0 release notes for upgrade
instructions if you haven't upgraded yet.SonatypeHosthas been removed from the DSL.SONATYPE_HOSTonly supportsCENTRAL_PORTALnow. It's recommended to use the following properties instead:mavenCentralPublishing=truereplacesSONATYPE_HOST=CENTRAL_PORTAL.mavenCentralAutomaticPublishing=truereplacesSONATYPE_AUTOMATIC_RELEASE=true.
- Update the Central Portal Publisher APIs to the latest.
- It's now possible to mix SNAPSHOT versions and release versions when running
publishtasks. - Fixed Gradle's deprecation warning caused by invalid URI.
- Fixed check for the minimum supported Gradle version running too late in some cases.
Thanks to @Goooler and @solrudev for their contributions to this release.
Minimum supported versions
- JDK 11
- Gradle 8.5
- Android Gradle Plugin 8.0.0
- Kotlin Gradle Plugin 1.9.20
Compatibility tested up to
- JDK 24
- Gradle 8.14.3
- Gradle 9.0.0-rc2
- Android Gradle Plugin 8.11.1
- Android Gradle Plugin 8.12.0-alpha08
- Kotlin Gradle Plugin 2.2.0
- Kotlin Gradle Plugin 2.2.20-Beta1
0.33.0
Caution
Sonatype OSSRH (oss.sonatype.org and s01.oss.sonatype.org) will be shut down on June 30, 2025.
Migration steps:
- Sign in to the Central Portal with your existing Sonatype account
- Go to Namespaces and click "Migrate Namespace"
for the relevant namespace. Confirm the migration and wait for it to complete. - Optional: If you want to publish snapshots of your project tap the 3 dots next to your namespace and
select "Enable SNAPSHOTs" - Go to Account and select "Generate User Token". Use the shown
"Username" and "Password" as values formavenCentralUsernameandmavenCentralPassword. - Configure this plugin to publish to Central Portal. Either update your
SONATYPE_HOSTproperty from
DEFAULTorS01toCENTRAL_PORTALor callpublishToMavenCentral()/publishToMavenCentral(automaticRelease)
without aSonatypeHostparameter.
BREAKING
publishToMavenCentral()andpublishToMavenCentral(automaticRelease)withoutSonatypeHostwill
now publish through the Central Portal.- Deprecated overloads of
publishToMavenCentralthat take aSonatypeHostparameter. - Deprecated
SonatypeHost.
New
- Basic experimental support for
com.android.fused-library. There are currently several limitations
on the Android Gradle plugin side which make signing as well as publishing sources/javadocs not possible.
Improvements
- Added new Gradle properties
mavenCentralPublishing=truereplacesSONATYPE_HOST=CENTRAL_PORTALmavenCentralAutomaticPublishing=truereplacesSONATYPE_AUTOMATIC_RELEASE=truesignAllPublications=truereplacesRELEASE_SIGNING_ENABLED=true- Note: The old properties continue to work and there are no plans to remove them
- The base plugin is now compatible with isolated projects as long as
pomFromGradleProperties()is
not called. - It's possible to pass a
TaskProvidertoJavadocJar.Dokka - Improved naming of produced
-javadocjars (locally, the name of the published artifact is unchanged) - Resolve issue that caused
versionto be read too early when publishing to
Central Portal.
Thanks to @Goooler, @solrudev and @sschuberth for their contributions to this release.
Minimum supported versions
- JDK 11
- Gradle 8.5
- Android Gradle Plugin 8.0.0
- Kotlin Gradle Plugin 1.9.20
Compatibility tested up to
- JDK 24
- Gradle 8.14.2
- Gradle 9.0-rc1
- Android Gradle Plugin 8.10.0
- Android Gradle Plugin 8.11.0-rc02
- Android Gradle Plugin 8.12.0-alpha06
- Kotlin Gradle Plugin 2.1.21
- Kotlin Gradle Plugin 2.2.0-RC3
0.32.0
- Improve names of Central Portal deployments.
- Fix an issue where the wrong staging profile for (s01.)oss.sonatype.org was selected
when publishing to Maven Central. - Fix incompatibility with Kotlin 1.9.x when used through compiled plugins.
- Improve error message when not being able to detect Kotlin plugin.
- Fix an issue with detecting whether configuration cache is enabled which lead to a not
actionable error message. - Fix compatibility with Gradle 9.0.
Minimum supported versions
- JDK 11
- Gradle 8.5
- Android Gradle Plugin 8.0.0
- Kotlin Gradle Plugin 1.9.20
Compatibility tested up to
- JDK 24
- Gradle 8.14
- Gradle 9.0-milestone-6
- Android Gradle Plugin 8.10.0
- Android Gradle Plugin 8.11.0-alpha10
- Kotlin Gradle Plugin 2.1.20
- Kotlin Gradle Plugin 2.1.21-RC2
- Kotlin Gradle Plugin 2.2.0-Beta2
Configuration cache status
Configuration cache is generally supported, except for:
- Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
- When using Dokka 1.x or Dokka 2.x without
0.31.0
- Add support for publishing snapshots to Central Portal.
- Make sure to enable snapshots for your namespace on central.sonatype.com.
- Thanks to @solrudev for the contribution.
- Add support for multiple matching staging profiles by taking the one with the longest
matching prefix.
Minimum supported versions
- JDK 11
- Gradle 8.5
- Android Gradle Plugin 8.0.0
- Kotlin Gradle Plugin 1.9.20
Compatibility tested up to
- JDK 23
- Gradle 8.13
- Android Gradle Plugin 8.9.0
- Android Gradle Plugin 8.10.0-alpha07
- Kotlin Gradle Plugin 2.1.10
- Kotlin Gradle Plugin 2.1.20-RC
Configuration cache status
Configuration cache is generally supported, except for:
- Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
- When using Dokka 1.x or Dokka 2.x without
V2Enabled
0.30.0
- Add support for Dokka 2.0.0-Beta
- Supports
org.jetbrains.dokka.experimental.gradle.pluginMode=V2Enabled - Supports both
org.jetbrains.dokkaandorg.jetbrains.dokka-javadoc - If both are applied the javadoc output is published
- Removed support for the old
org.jetbrains.dokka-androidplugin
- Supports
- Support custom Sonatype hosts by providing a
httpsurl inSONATYPE_HOSTGradle property - Remove usages of deprecated Gradle API that is scheduled to be removed in Gradle 9.0
- Raised minimum supported Gradle version
- Improve naming of javadoc jars
Minimum supported versions
- JDK 11
- Gradle 8.5
- Android Gradle Plugin 8.0.0
- Kotlin Gradle Plugin 1.9.20
Compatibility tested up to
- JDK 23
- Gradle 8.10.2
- Android Gradle Plugin 8.7.0
- Android Gradle Plugin 8.8.0-alpha05
- Kotlin Gradle Plugin 2.0.20
- Kotlin Gradle Plugin 2.1.0-Beta1
Configuration cache status
Configuration cache is generally supported, except for:
- Publishing releases to Maven Central (snapshots are fine), blocked by Gradle issue #22779.
- When using Dokka 1.x or Dokka 2.x without
V2Enabled