Error Knowledge Base MAVEN POM_MISSING

The POM for <artifact> is missing, no dependency information available

Maven located a JAR coordinate, but could not download the corresponding POM, so it cannot determine transitive dependencies or metadata for that artifact.

Affected versions: All supported Apache Maven versions.

What This Error Means

Maven located a JAR coordinate, but could not download the corresponding POM, so it cannot determine transitive dependencies or metadata for that artifact.

How to Fix It

  1. Confirm the artifact coordinates in your pom.xml are correct (exact groupId/artifactId/version).
  2. If this is a private artifact, confirm it was published with a POM and that your repository manager contains both the POM and JAR.
  3. If your build uses a mirror, confirm it proxies the repository that contains the POM (and isn't blocking metadata).
  4. Delete cached failures under ~/.m2/repository/<groupId path>/<artifactId>/<version>/ (including *.lastUpdated) and retry.
  5. Re-run the build after the POM is available and accessible.

Why It Happens

  • The artifact was published incorrectly (JAR uploaded without its POM).
  • The coordinates are wrong (wrong groupId/artifactId/version), so Maven is requesting a POM that doesn't exist.
  • A mirror/proxy repository is serving incomplete metadata or blocking the POM path.
  • A cached failed download (*.lastUpdated) is preventing Maven from retrying immediately.

How to Verify

  1. Re-run mvn -DskipTests package and confirm the POM-missing message no longer appears.
  2. Run mvn -q -DskipTests dependency:tree and confirm transitive dependencies resolve for that artifact.

Manual POM availability checks

  1. Copy the failing coordinates and attempt to fetch the POM directly: mvn -q -Dartifact=groupId:artifactId:pom:version dependency:get.
  2. Check whether the artifact exists in the expected repository (Central or internal repository manager) with the exact coordinates and version.
  3. Force a metadata refresh once: mvn -U -DskipTests package.

Common CLI Output

[WARNING] The POM for com.example:missing:jar:1.0.0 is missing, no dependency information available
[ERROR] The POM for com.example:missing:jar:1.0.0 is missing, no dependency information available

Why the POM matters for dependencies

  1. Maven uses an artifact's POM to discover its dependencies, dependencyManagement, relocations, and other metadata.
  2. If the POM is missing or cannot be downloaded, Maven can sometimes download the JAR but cannot correctly resolve transitive dependencies.

Prevention Tips

  • Publish artifacts through a repository manager and enforce complete metadata (POM + checksums).
  • Prefer releasing through Maven deploy workflows so POMs are generated and uploaded consistently.
  • Use CI checks that verify repository contents include both POM and binary artifacts.

Where This Can Be Triggered

github.com/apache/maven/blob/maven-3.9.6/maven-core/src/main/java/org/apache/maven/project/DefaultProjectDependenciesResolver.java

When Maven cannot fetch required POM metadata, the underlying resolver message (e.g. "The POM for ... is missing") bubbles up via e.getMessage() in Maven's dependency resolution exception. - GitHub

String msg = "Could not resolve dependencies for project " + project.getId() + ": " + e.getMessage();
DependencyResolutionException dex = new DependencyResolutionException(msg, e);
dex.setResult(e.getResult());
throw dex;

Need help or found a mistake? Contact RepoFlow support for questions.

Join our mailing list