{"record":{"id":"58e3da16b61df92e","repo":"apache/maven","slug":"the-super-pom-is-damaged-please-verify-the-int","errorCode":null,"errorMessage":"The super POM {} is damaged, please verify the integrity of your Maven installation","messagePattern":"The super POM (.+?) is damaged, please verify the integrity of your Maven installation","errorType":"exception","errorClass":"IllegalStateException","httpStatus":null,"severity":"critical","filePath":"impl/maven-impl/src/main/java/org/apache/maven/impl/DefaultSuperPomProvider.java","lineNumber":74,"sourceCode":"\n    private Model readModel(String version, String v) {\n        String resource = \"/org/apache/maven/model/pom-\" + v + \".xml\";\n        URL url = getClass().getResource(resource);\n        if (url == null) {\n            throw new IllegalStateException(\"The super POM \" + resource + \" was not found\"\n                    + \", please verify the integrity of your Maven installation\");\n        }\n        try (InputStream is = url.openStream()) {\n            String modelId =\n                    \"org.apache.maven:maven-api-impl:\" + getImplementationVersion(getClass()) + \":super-pom-\" + version;\n            return modelProcessor.read(XmlReaderRequest.builder()\n                    .modelId(modelId)\n                    .location(url.toExternalForm())\n                    .inputStream(is)\n                    .strict(false)\n                    .build());\n        } catch (IOException e) {\n            throw new IllegalStateException(\n                    \"The super POM \" + resource + \" is damaged\"\n                            + \", please verify the integrity of your Maven installation\",\n                    e);\n        }\n    }\n\n    static String getImplementationVersion(Class<?> clazz) {\n        Package packageInfo = clazz.getPackage();\n        return packageInfo != null ? packageInfo.getImplementationVersion() : null;\n    }\n}\n","sourceCodeStart":56,"sourceCodeEnd":86,"githubUrl":"https://github.com/apache/maven/blob/e4093d4e120eac99d6bdce5ba67cace2f3085c97/impl/maven-impl/src/main/java/org/apache/maven/impl/DefaultSuperPomProvider.java#L56-L86","documentation":"The super POM classpath resource was found, but reading it threw an IOException while opening the stream or parsing. DefaultSuperPomProvider reports the installation as damaged. Almost always a corrupted or truncated maven-impl jar or Maven distribution.","triggerScenarios":"getSuperPom(version) where url.openStream() or the model read fails with IOException: truncated jar entry, disk corruption, or a repackaged jar with broken resource compression.","commonSituations":"Interrupted Maven download or update; disk or proxy corruption; jars processed by broken shading or repackaging tools.","solutions":["Re-download or reinstall the Maven distribution / maven-impl artifact","Verify the jar integrity (checksum, jar tf) and replace it if entries cannot be read","Clear and re-fetch any local-repository copy of maven-impl if it resolved from a remote repository"],"exampleFix":null,"handlingStrategy":"try-catch","validationCode":null,"typeGuard":null,"tryCatchPattern":"try {\n    Model superPom = superPomProvider.getSuperPom(version);\n} catch (IllegalStateException e) {\n    // installation damaged: verify checksums, reinstall Maven / maven-impl, then restart\n    log.error(\"Maven installation damaged: {}\", e.getMessage());\n}","preventionTips":["Verify distribution checksums when provisioning Maven in CI images","Replace, never patch, a jar that fails jar tf checks"],"tags":["maven","super-pom","installation","corruption"],"backgroundTag":"corrupted-installation","analyzedSha":"e4093d4e120eac99d6bdce5ba67cace2f3085c97","analyzedAt":"2026-08-21T22:58:24.034Z","schemaVersion":2},"datasetVersion":"2026-08-21T23:17:16.201Z"}