When working in IntelliJ IDEA with Gradle, seeing the message stuck in your progress bar can be a major productivity killer. This process is how Gradle determines the latest versions of your dependencies—especially dynamic versions or SNAPSHOTs—but it often becomes a bottleneck due to network issues, repository misconfigurations, or aggressive update policies. Why Gradle Downloads maven-metadata.xml
The maven-metadata.xml file is a crucial piece of Maven-style repository architecture. It tells build tools like Gradle:
If you have multiple repositories (e.g., mavenLocal() , a private Nexus, and mavenCentral() ), Gradle may query each one sequentially. A slow or unresponsive repository at the top of your list can hang the entire process.
If your build.gradle uses ranges like implementation 'com.example:library:1.2.+' , Gradle must check the remote repository's metadata every time to see if a newer version exists.
Firewalls or misconfigured Gradle proxy settings often cause metadata requests to time out rather than fail quickly. How to Fix the "Stuck" Progress Bar 1. Avoid Dynamic and SNAPSHOT Versions
The exact timestamp and build number for the newest SNAPSHOT version.
A list of all released versions for a specific artifact.