{"record":{"id":"05319d9842e8f30f","repo":"quarkusio/quarkus","slug":"failed-to-resolve-the-effective-model-for","errorCode":null,"errorMessage":"Failed to resolve the effective model for ","messagePattern":"Failed to resolve the effective model for ","errorType":"exception","errorClass":"RuntimeException","httpStatus":null,"severity":"error","filePath":"independent-projects/bootstrap/maven-resolver/src/main/java/io/quarkus/bootstrap/resolver/maven/workspace/WorkspaceLoader.java","lineNumber":198,"sourceCode":"            req.setPomFile(rawModule.getModel().getPomFile());\n            req.setModelResolver(modelResolver);\n            req.setSystemProperties(System.getProperties());\n            req.setUserProperties(System.getProperties());\n            req.setModelCache(modelCache);\n            req.setActiveProfileIds(activeProfileIds);\n            req.setInactiveProfileIds(inactiveProfileIds);\n            req.setProfiles(profiles);\n            req.setRawModel(rawModule.getModel());\n            req.setWorkspaceModelResolver(this);\n            final LocalProject project;\n            try {\n                project = new LocalProject(modelBuilder.build(req), workspace);\n            } catch (Exception e) {\n                if (warnOnFailingWsModules) {\n                    log.warn(\"Failed to resolve effective model for \" + rawModule.getModel().getPomFile(), e);\n                    return;\n                }\n                throw new RuntimeException(\"Failed to resolve the effective model for \" + rawModule.getModel().getPomFile(), e);\n            }\n            loadedModule(project);\n            for (var module : project.getEffectiveModel().getModules()) {\n                queueModule(project.getDir().resolve(module));\n            }\n        };\n    }\n\n    private void processLoadedRawModel(WorkspaceModulePom module) {\n        loadedModule(new LocalProject(module.getResolvedGroupId(), module.getResolvedVersion(), module.getModel(),\n                module.effectiveModel, workspace));\n    }\n\n    private void loadedModule(LocalProject project) {\n        log.debugf(\"Loaded module from %s\", project.getDir());\n        if (currentProject == null && project.getDir().equals(currentProjectPom.getParent())) {\n            currentProject = project;\n        }","sourceCodeStart":180,"sourceCodeEnd":216,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/independent-projects/bootstrap/maven-resolver/src/main/java/io/quarkus/bootstrap/resolver/maven/workspace/WorkspaceLoader.java#L180-L216","documentation":"While loading workspace modules, WorkspaceLoader resolves each raw module's effective model with the Maven model builder. If that fails, it either logs a warning (when warnOnFailingWsModules is true) and skips the module, or throws this RuntimeException wrapping the underlying cause when warnings are disabled. The cause is usually an invalid or unresolvable POM.","triggerScenarios":"Queueing a workspace module whose POM cannot be built into an effective model: malformed XML, unresolvable parent POM, invalid inheritance/version placeholders, or a model-builder exception — thrown when ctx.warnOnFailingWsModules is false; skipped with a warning when true.","commonSituations":"A typo in a module pom.xml; a parent version that no longer resolves; a CI property like ${revision} misconfigured; upgrading Maven/model builder and POMs relying on deprecated interpolation.","solutions":["Read the wrapped cause 'e' in the stack trace — it names the exact POM problem (unresolvable parent, bad XML, etc.) and fix it","Fix the parent POM reference or version property in the failing module's pom.xml","Run 'mvn validate' on the module locally to reproduce the model-building failure outside Quarkus","If you intended failures to be tolerated, enable warnOnFailingWsModules in BootstrapMavenContext"],"exampleFix":"<!-- before -->\n<parent>\n  <groupId>com.acme</groupId>\n  <artifactId>parent</artifactId>\n  <version>1.1-SNAPSHOT</version>\n</parent>\n<!-- after: parent actually exists at 1.0 -->\n<parent>\n  <groupId>com.acme</groupId>\n  <artifactId>parent</artifactId>\n  <version>1.0</version>\n</parent>","handlingStrategy":"try-catch","validationCode":"// Validate POMs build before workspace load\nProcess p = new ProcessBuilder(\"mvn\", \"-q\", \"validate\").directory(projectRoot.toFile()).inheritIO().start();\nif (p.waitFor() != 0) throw new IllegalStateException(\"POM model invalid; fix before workspace load\");","typeGuard":null,"tryCatchPattern":"try {\n    loader.load(ctx);\n} catch (RuntimeException e) {\n    Throwable cause = e.getCause();\n    log.error(\"Effective model failure for a workspace POM: \" + (cause != null ? cause.getMessage() : e.getMessage()));\n}","preventionTips":["Run mvn validate in CI to catch bad POMs early","Keep parent versions resolvable (published or in the same reactor)","Be explicit with CI-friendly versions (${revision}) via .mvn/maven.config","Do not leave warnOnFailingWsModules=true in builds where skipped modules cause confusion"],"tags":["maven","pom","workspace"],"backgroundTag":"invalid-pom-model","analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}