{"record":{"id":"7c284c822e928573","repo":"quarkusio/quarkus","slug":"misalignmentreport","errorCode":null,"errorMessage":"${misalignmentReport}","messagePattern":"\\$\\{misalignmentReport\\}","errorType":"exception","errorClass":"RuntimeException","httpStatus":null,"severity":"error","filePath":"core/deployment/src/main/java/io/quarkus/deployment/builditem/AppModelProviderBuildItem.java","lineNumber":56,"sourceCode":"     * The behavior in case of misalignment depends on the provided {@link BootstrapConfig#misalignedPlatformImports()}:\n     * <ul>\n     * <li><b>ERROR</b>: Throws a {@link RuntimeException}.</li>\n     * <li><b>WARN</b>: Logs a warning.</li>\n     * <li><b>IGNORE</b>: Skips validation entirely.</li>\n     * </ul>\n     *\n     * @param config the bootstrap configuration\n     * @return the validated application model\n     * @throws RuntimeException if platform imports are misaligned and the configuration is set to {@code ERROR}\n     *         or if the configuration is unrecognized.\n     */\n    public ApplicationModel validateAndGet(BootstrapConfig config) {\n        final PlatformImports platforms = appModel.getPlatforms();\n        if (platforms != null && !BootstrapConfig.MisalignedPlatformImports.IGNORE.equals(config.misalignedPlatformImports())\n                && !platforms.isAligned()) {\n            switch (config.misalignedPlatformImports()) {\n                case ERROR:\n                    throw new RuntimeException(platforms.getMisalignmentReport());\n                case WARN:\n                    log.warn(platforms.getMisalignmentReport());\n                    break;\n                default:\n                    throw new RuntimeException(\"Unrecognized option for quarkus.bootstrap.misaligned-platform-imports: \"\n                            + config.misalignedPlatformImports());\n            }\n        }\n        return appModel;\n    }\n\n    public Supplier<DependencyInfoProvider> getDependencyInfoProvider() {\n        return depInfoProvider;\n    }\n}\n","sourceCodeStart":38,"sourceCodeEnd":72,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/core/deployment/src/main/java/io/quarkus/deployment/builditem/AppModelProviderBuildItem.java#L38-L72","documentation":"When the application's resolved platform imports (e.g. quarkus-bom versions) do not match the versions the Quarkus platform expects, and quarkus.bootstrap.misaligned-platform-imports=error, validateAndGet throws a RuntimeException containing the generated misalignment report. This guards against builds mixing Quarkus extension versions from different releases.","triggerScenarios":"quarkus.bootstrap.misaligned-platform-imports is set to ERROR (or unset, depending on default) and appModel.getPlatforms().isAligned() returns false — typically after overriding a quarkus-* extension version in the pom or importing a BOM of a different Quarkus release.","commonSituations":"Manually pinning a newer quarkus-something while the platform BOM pins another; mixing Quarkus LTS and non-LTS platform BOMs; dependencyManagement overrides in a multi-module project.","solutions":["Align all quarkus-* dependencies with a single platform BOM version (import io.quarkus.platform:quarkus-bom of one release).","Set -Dquarkus.bootstrap.misaligned-platform-imports=warn or =ignore to downgrade/skip the check (only if you understand the risk).","Read the report in the message to find which artifacts are misaligned and fix those versions in dependencyManagement."],"exampleFix":"// before (pom.xml)\n<dependency><groupId>io.quarkus</groupId><artifactId>quarkus-resteasy</artifactId><version>3.99.0</version></dependency>\n// after\n<dependencyManagement><dependencies><dependency>\n  <groupId>io.quarkus.platform</groupId><artifactId>quarkus-bom</artifactId>\n  <version>3.15.1</version><type>pom</type><scope>import</scope>\n</dependency></dependencies></dependencyManagement>","handlingStrategy":"validation","validationCode":"mvn dependency:tree -Dincludes=io.quarkus\n// verify all quarkus-* artifacts share one platform version before building","typeGuard":null,"tryCatchPattern":"try {\n    appModelProvider.validateAndGet(bootstrapConfig);\n} catch (RuntimeException e) {\n    // report lists misaligned artifacts; align versions or set misaligned-platform-imports=warn\n}","preventionTips":["Import a single quarkus-bom and never override quarkus-* versions individually.","Run dependency convergence checks in CI (maven-enforcer requireUpperBoundDeps / dependencyConvergence).","Update the whole platform at once when upgrading Quarkus."],"tags":["dependencies","platform","version-mismatch","quarkus"],"backgroundTag":"platform-version-misalignment","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"}