Reducing Publishing Usage⚓︎
If your organization is approaching or exceeding Maven Central publishing limits, you may be able to reduce your publishing usage without changing your project or requesting higher limits.
Many projects publish additional files, large documentation archives, or frequent releases that are not required by Maven Central. Reviewing what your build produces can often reduce file count, release size, or release frequency while still providing everything consumers need.
Before making changes, review your organization's metrics in the Usage Center to determine whether file count, release size, release count, or a combination of these metrics is driving your publishing usage.
Reduce File Count⚓︎
Every published file contributes to your organization's monthly file count. Many projects publish additional artifacts that provide little value to consumers or are generated automatically by build tools.
Consider the following recommendations:
- Publish only the artifacts your consumers need.
- Review whether every classifier artifact is necessary.
- Remove duplicate archives or alternate packaging formats that contain the same content.
- Avoid publishing generated artifacts that are not intended for distribution.
- Review your build output before publishing to understand exactly which files will be uploaded.
Artifacts commonly published to Maven Central, such as POM files, signatures, source JARs, and Javadoc JARs, are expected as part of a standard release. Focus on identifying additional artifacts that your project does not need to publish.
Reduce Release Size⚓︎
Large artifacts increase storage requirements and contribute to your organization's monthly release size.
To reduce release size:
- Remove unused resources from published artifacts.
- Exclude large static assets, such as images, fonts, or media files, unless they are required by consumers.
- Compress documentation assets where appropriate.
- Keep source and documentation archives focused on distributable content.
- Review generated Javadoc for unnecessary bundled resources.
Even small reductions across multiple releases can significantly reduce your organization's overall publishing usage.
Reduce Release Frequency⚓︎
Publishing limits are based on sustained publishing activity over time rather than individual releases.
If your project publishes very frequently, consider whether releases can be consolidated without affecting your development process.
For example:
- Publish release-ready artifacts instead of every intermediate build.
- Combine small changes into a single release when appropriate.
- Avoid publishing new releases solely for documentation or metadata updates.
Occasional spikes, such as urgent security releases, should not by themselves cause enforcement (see Maven Central Publishing Limits for how enforcement works).
Build Tool Considerations⚓︎
Some build tools and plugins generate additional files by default. Reviewing your build configuration can help reduce unnecessary publishing activity.
Gradle⚓︎
Certain Gradle publishing configurations generate checksum files for signature (.asc) artifacts. These additional checksum files are generally not required by Maven Central and can substantially increase file counts for releases that contain many artifacts.
If your build fails because Gradle attempts to generate checksums for .asc signature files, configure your Gradle publishing settings according to the official Gradle documentation:
Review your publishing plugins and checksum configuration to determine whether these files can be disabled.
Maven⚓︎
Review your Maven plugins to ensure they publish only the artifacts your project requires.
For example:
- Remove plugins that generate documentation or archives that are no longer needed.
- Avoid attaching duplicate artifacts with different classifiers.
- Verify that build plugins are not generating redundant output during the release process.
Review Generated Artifacts⚓︎
Before publishing a release, inspect the files your build will upload.
Consider the following questions:
- Does every published artifact provide value to consumers?
- Are multiple artifacts distributing the same content?
- Are documentation or source archives larger than necessary?
- Are build plugins generating files that are not required?
Regularly reviewing your published artifacts can help keep file counts, release sizes, and release frequency in check as your project evolves.
Frequently Asked Questions⚓︎
Why does my release contain so many files?
Many build tools generate additional artifacts automatically, including signatures, checksums, documentation archives, source archives, and classifier artifacts. Some of these are expected, while others may be optional depending on your build configuration.
Review your generated artifacts before publishing to identify files that are not required for your project.
Which generated files are required by Maven Central?
Maven Central requires the primary artifact, POM, source JAR, Javadoc JAR, and GPG signatures for each file — see the publishing requirements for the current list. Additional generated artifacts (such as extra classifiers, alternate archives, or tool-generated supplementary files) depend on your build configuration and project requirements, and are candidates for reduction.
Why is Gradle generating extra checksum files?
Some Gradle publishing configurations generate checksum files for signature (.asc) artifacts. These files are typically unnecessary for Maven Central and can significantly increase the number of published files in a release.
Review your Gradle publishing configuration to determine whether this behavior can be disabled.