{"record":{"id":"c6e64422a6334e28","repo":"quarkusio/quarkus","slug":"failed-to-load-pompropspath-from-the-classpath-c6e644","errorCode":null,"errorMessage":"Failed to load <pomPropsPath> from the classpath","messagePattern":"Failed to load <pomPropsPath> from the classpath","errorType":"exception","errorClass":"MojoExecutionException","httpStatus":null,"severity":"error","filePath":"devtools/maven/src/main/java/io/quarkus/maven/DevMojo.java","lineNumber":1713,"sourceCode":"                coreDeployment = d;\n                break;\n            }\n        }\n        if (coreDeployment == null) {\n            throw new MojoExecutionException(\n                    \"Failed to locate io.quarkus:quarkus-core-deployment on the application build classpath\");\n        }\n\n        final String pomPropsPath = \"META-INF/maven/io.quarkus/quarkus-bootstrap-maven-resolver/pom.properties\";\n        final InputStream devModePomPropsIs = DevModeMain.class.getClassLoader().getResourceAsStream(pomPropsPath);\n        if (devModePomPropsIs == null) {\n            throw new MojoExecutionException(\"Failed to locate \" + pomPropsPath + \" on the classpath\");\n        }\n        final Properties devModeProps = new Properties();\n        try (InputStream is = devModePomPropsIs) {\n            devModeProps.load(is);\n        } catch (IOException e) {\n            throw new MojoExecutionException(\"Failed to load \" + pomPropsPath + \" from the classpath\", e);\n        }\n        final String devModeGroupId = devModeProps.getProperty(\"groupId\");\n        if (devModeGroupId == null) {\n            throw new MojoExecutionException(\"Classpath resource \" + pomPropsPath + \" is missing groupId\");\n        }\n        final String devModeArtifactId = devModeProps.getProperty(\"artifactId\");\n        if (devModeArtifactId == null) {\n            throw new MojoExecutionException(\"Classpath resource \" + pomPropsPath + \" is missing artifactId\");\n        }\n        final String devModeVersion = devModeProps.getProperty(\"version\");\n        if (devModeVersion == null) {\n            throw new MojoExecutionException(\"Classpath resource \" + pomPropsPath + \" is missing version\");\n        }\n\n        final DefaultArtifact devModeJar = new DefaultArtifact(devModeGroupId, devModeArtifactId, ArtifactCoords.TYPE_JAR,\n                devModeVersion);\n        final DependencyResult cpRes = repoSystem.resolveDependencies(repoSession,\n                new DependencyRequest()","sourceCodeStart":1695,"sourceCodeEnd":1731,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/devtools/maven/src/main/java/io/quarkus/maven/DevMojo.java#L1695-L1731","documentation":"After locating the quarkus-bootstrap-maven-resolver pom.properties resource, DevMojo loads it as a Properties object; an IOException while reading the stream is wrapped in this MojoExecutionException. It means the resource was found but could not be read from the jar/stream.","triggerScenarios":"devModeProps.load(is) throws IOException — typically an I/O error reading from the jar entry backing the classpath resource (corrupt jar, closed filesystem, disk error).","commonSituations":"Corrupted jar in ~/.m2/repository; interrupted download leaving a truncated artifact; filesystem/network mounts with I/O failures; antivirus locking jar files on Windows.","solutions":["Delete ~/.m2/repository/io/quarkus/quarkus-bootstrap-maven-resolver and re-resolve with -U","Run `jar tf` or `unzip -t` on the resolver jar to confirm integrity","Check disk space and filesystem health; exclude the Maven repo from antivirus scanning"],"exampleFix":null,"handlingStrategy":"retry","validationCode":"unzip -t ~/.m2/repository/io/quarkus/quarkus-bootstrap-maven-resolver/<v>/quarkus-bootstrap-maven-resolver-<v>.jar","typeGuard":null,"tryCatchPattern":"try {\n    mvn quarkus:dev\n} catch (MojoExecutionException e) {\n    // delete ~/.m2/repository/io/quarkus/quarkus-bootstrap-maven-resolver and retry with -U\n}","preventionTips":["Ensure stable disk/network when downloading Maven artifacts","Exclude ~/.m2 from antivirus or sync tools","Retry resolution with -U after any IO-related build failure"],"tags":["maven","io","corrupt-artifact","classpath"],"backgroundTag":"corrupted-artifact-in-local-repo","analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-12T22:17:10.623Z"}