{"record":{"id":"e9670950e181575c","repo":"quarkusio/quarkus","slug":"failed-to-locate-io-quarkus-quarkus-core-deploymen-e96709","errorCode":null,"errorMessage":"Failed to locate io.quarkus:quarkus-core-deployment on the application build classpath","messagePattern":"Failed to locate io\\.quarkus:quarkus-core-deployment on the application build classpath","errorType":"exception","errorClass":"MojoExecutionException","httpStatus":null,"severity":"error","filePath":"devtools/maven/src/main/java/io/quarkus/maven/DevMojo.java","lineNumber":1700,"sourceCode":"                .map(Xpp3Dom::getValue)\n                .map(String::trim)\n                .filter(not(String::isEmpty))\n                .ifPresent(builderCall);\n    }\n\n    private void addQuarkusDevModeDeps(DevModeCommandLineBuilder builder, ApplicationModel appModel)\n            throws MojoExecutionException, DependencyResolutionException {\n\n        ResolvedDependency coreDeployment = null;\n        for (ResolvedDependency d : appModel.getDependencies()) {\n            if (d.isDeploymentCp() && d.getArtifactId().equals(\"quarkus-core-deployment\")\n                    && d.getGroupId().equals(IO_QUARKUS)) {\n                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        }","sourceCodeStart":1682,"sourceCodeEnd":1718,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/devtools/maven/src/main/java/io/quarkus/maven/DevMojo.java#L1682-L1718","documentation":"DevMojo (quarkus:dev) requires the quarkus-core-deployment artifact on the application's build classpath to launch dev mode. After scanning project dependencies it looks for an artifact with groupId io.quarkus and artifactId quarkus-core-deployment; if none is found it aborts with this MojoExecutionException. It indicates the Quarkus core deployment jar is not a resolved dependency of the project being run.","triggerScenarios":"Running `mvn quarkus:dev` on a project whose resolved dependencies contain no io.quarkus:quarkus-core-deployment artifact — e.g. no quarkus-* runtime extension dependencies at all, a dependency management setup that excludes/transfers quarkus-core-deployment, or an application model whose dependencies were filtered before the scan.","commonSituations":"Missing quarkus-maven-plugin/extension dependencies in pom.xml; using an import-only BOM without adding any quarkus extension dependency; a custom parent POM excluding io.quarkus artifacts; corrupted/partial local repository where the deployment artifact failed to resolve silently.","solutions":["Add at least one Quarkus extension dependency (e.g. io.quarkus:quarkus-arc) which pulls in quarkus-core-deployment transitively","Import io.quarkus.platform:quarkus-bom (matching your Quarkus version) in dependencyManagement","Run with -U to refresh resolution and verify `mvn dependency:tree | grep quarkus-core-deployment` shows the artifact","Check for exclusions of io.quarkus artifacts in the pom or parent POM"],"exampleFix":"// before\n<dependencies>\n  <!-- no quarkus dependencies -->\n</dependencies>\n// after\n<dependencies>\n  <dependency>\n    <groupId>io.quarkus</groupId>\n    <artifactId>quarkus-arc</artifactId>\n  </dependency>\n</dependencies>","handlingStrategy":"validation","validationCode":"mvn dependency:tree -Dincludes=io.quarkus:quarkus-core-deployment\n# must print a resolved node before running quarkus:dev","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Always depend on at least one Quarkus extension before running quarkus:dev","Import the Quarkus platform BOM matching your plugin version","Verify with dependency:tree that io.quarkus artifacts resolve","Avoid broad exclusions of io.quarkus group artifacts"],"tags":["maven","dev-mode","classpath","quarkus"],"backgroundTag":"missing-classpath-dependency","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"}