{"record":{"id":"8451363accfd416d","repo":"apache/maven","slug":"the-pom-for-is-missing-no-dependency-informati","errorCode":null,"errorMessage":"The POM for {} is missing, no dependency information available","messagePattern":"The POM for (.+?) is missing, no dependency information available","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"impl/maven-core/src/main/java/org/apache/maven/internal/aether/LoggingRepositoryListener.java","lineNumber":101,"sourceCode":"        if (logger.isDebugEnabled()) {\n            logger.warn(\"The metadata {} {}{}\", metadata, errorType, msg, exception);\n        } else {\n            logger.warn(\"The metadata {} {}{}\", metadata, errorType, msg);\n        }\n    }\n\n    @Override\n    public void artifactDescriptorInvalid(RepositoryEvent event) {\n        // The exception stack trace is not really interesting here\n        logger.warn(\n                \"The POM for {} is invalid, transitive dependencies (if any) will not be available: {}\",\n                event.getArtifact(),\n                event.getException().getMessage());\n    }\n\n    @Override\n    public void artifactDescriptorMissing(RepositoryEvent event) {\n        logger.warn(\"The POM for {} is missing, no dependency information available\", event.getArtifact());\n    }\n}\n","sourceCodeStart":83,"sourceCodeEnd":104,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-core/src/main/java/org/apache/maven/internal/aether/LoggingRepositoryListener.java#L83-L104","documentation":"artifactDescriptorMissing: the artifact itself resolved, but no POM exists for it in any repository (the .pom request came back not-found). Maven treats the artifact as having no dependency information at all - it stays on the classpath, but nothing it would have depended on is pulled in.","triggerScenarios":"A jar was installed with generatePom=false (mvn install:install-file without -DpomFile or -DgeneratePom), a third-party jar deployed without its POM, or a repository proxy filters out .pom files.","commonSituations":"Manually installed vendor jars (JDBC drivers, licensed SDKs) with no POM; system-scoped or file-scoped dependencies; internal proxies misconfigured to block pom packaging artifacts.","solutions":["Reinstall the artifact with a real or generated POM: mvn install:install-file -Dfile=lib.jar -DgroupId=... -DartifactId=... -Dversion=... -Dpackaging=jar -DgeneratePom=true (or -DpomFile=lib.pom)","Declare the library's transitive dependencies explicitly in your own POM","When you publish artifacts yourself, always deploy the POM alongside the jar","If a mirror is stripping .pom files, fix its include/exclude patterns"],"exampleFix":"# before\nmvn install:install-file -Dfile=ojdbc8.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=19c\n# after (POM generated, descriptor no longer missing)\nmvn install:install-file -Dfile=ojdbc8.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=19c -DgeneratePom=true","handlingStrategy":"fallback","validationCode":"// before adding a dependency, verify a POM exists for it in the repo\ntry (InputStream pom = new URL(repoUrl + artifactPath + \".pom\").openStream()) {\n    // descriptor available\n} catch (FileNotFoundException e) {\n    // plan for missing transitive info: declare the deps you need explicitly\n}","typeGuard":null,"tryCatchPattern":"try {\n    system.resolveDependencies(session, request);\n} catch (ArtifactDescriptorException e) {\n    if (e.getCause() instanceof ArtifactNotFoundException anf && anf.getArtifact().getExtension().equals(\"pom\")) {\n        // POM missing: fall back to explicit dependency list\n    } else { throw e; }\n}","preventionTips":["Always pass -DgeneratePom=true or -DpomFile=... to install:install-file","Verify third-party artifacts have POMs before adding them","Publish POMs with every jar you deploy"],"tags":["resolver","missing-pom","transitive-dependencies","install-file"],"backgroundTag":"missing-pom-artifact","analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}