fix(android): replace removed jcenter() with mavenCentral() - #31
Merged
samirans89 merged 1 commit intoAug 21, 2026
Merged
Conversation
Gradle 9 removed the jcenter() repository shorthand (it was only deprecated through Gradle 8.x). Building this plugin on Gradle 9 now fails at project evaluation with "Could not find method jcenter()". Swap both repository blocks (buildscript + allprojects) to mavenCentral(), which serves the same artifacts (JCenter is sunset/read-only).
|
|
Rushabhshroff
approved these changes
Aug 21, 2026
Rushabhshroff
left a comment
Collaborator
There was a problem hiding this comment.
This pull request is correct, safe, and necessary.
Review Summary
| Aspect | Evaluation | Details |
|---|---|---|
| Correctness | ✅ Passed | Fixes the breaking Could not find method jcenter() exception under Gradle 9.0+. |
| Backward Compatibility | ✅ Passed | Compatible with existing Gradle versions (6.x, 7.x, 8.x, and 9.x+). |
| Risk Level | 🟢 Low | Standard swap; Maven Central hosts all required modern build dependencies. |
Technical Breakdown
- Root Cause: JFrog officially shut down resolution services for JCenter. Gradle officially removed the
jcenter()shorthand method in Gradle 9.0, turning any project calling it into a fatal build failure. - Behavioral Impact:
mavenCentral()is the standard modern replacement. Since all modern Android Gradle Plugin (AGP) and standard Flutter build tools host their dependencies on Maven Central, replacingjcenter()withmavenCentral()preserves all existing build behavior while restoring build pipeline compatibility.
Verdict: The PR should be merged as-is.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
android/build.gradledeclaresjcenter()in both thebuildscriptandallprojectsrepository blocks. Gradle 9 removedjcenter()(it was only deprecated through Gradle 8.x), so any project that evaluates this plugin under Gradle 9 fails:This surfaces as soon as a consuming app upgrades its Android toolchain to Gradle 9 (e.g. via a newer Flutter SDK that regenerates the Gradle wrapper).
Fix
Replace both
jcenter()calls withmavenCentral(). JCenter has been sunset (read-only since early 2022), and the artifacts these blocks need are available on Maven Central, so this is a safe, behaviour-preserving swap that also works on Gradle 8.x.repositories { google() - jcenter() + mavenCentral() }No other changes.