{"record":{"id":"09b15c8b6e73a554","repo":"quarkusio/quarkus","slug":"failed-to-initialize-the-quarkus-maven-extension-m","errorCode":null,"errorMessage":"Failed to initialize the Quarkus Maven extension manager","messagePattern":"Failed to initialize the Quarkus Maven extension manager","errorType":"exception","errorClass":"RuntimeException","httpStatus":null,"severity":"error","filePath":"independent-projects/tools/devtools-common/src/main/java/io/quarkus/devtools/project/QuarkusProjectHelper.java","lineNumber":61,"sourceCode":"    }\n\n    public static BuildTool detectExistingBuildTool(Path projectDirPath) {\n        return BuildTool.fromProject(projectDirPath);\n    }\n\n    public static QuarkusProject getCachedProject(Path projectDir) {\n        if (cachedProject == null) {\n            PrintStream nullPrintStream = new PrintStream(OutputStream.nullOutputStream());\n            log = MessageWriter.info(nullPrintStream);\n            BuildTool buildTool = detectExistingBuildTool(projectDir);\n            if (buildTool == null) {\n                buildTool = BuildTool.MAVEN;\n            }\n            if (BuildTool.MAVEN.equals(buildTool)) {\n                try {\n                    return MavenProjectBuildFile.getProject(projectDir, log, null);\n                } catch (RegistryResolutionException e) {\n                    throw new RuntimeException(\"Failed to initialize the Quarkus Maven extension manager\", e);\n                }\n            }\n            final ExtensionCatalog catalog;\n            try {\n                catalog = resolveExtensionCatalog();\n            } catch (Exception e) {\n                throw new RuntimeException(\"Failed to resolve the Quarkus extension catalog\", e);\n            }\n            cachedProject = getProject(projectDir, catalog, buildTool, JavaVersion.NA, log);\n        }\n\n        return cachedProject;\n    }\n\n    public static QuarkusProject getProject(Path projectDir) {\n        BuildTool buildTool = detectExistingBuildTool(projectDir);\n        if (buildTool == null) {\n            buildTool = BuildTool.MAVEN;","sourceCodeStart":43,"sourceCodeEnd":79,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/independent-projects/tools/devtools-common/src/main/java/io/quarkus/devtools/project/QuarkusProjectHelper.java#L43-L79","documentation":"QuarkusProjectHelper.getCachedProject detects the build tool and, for Maven projects, initializes the project via MavenProjectBuildFile.getProject. If that throws a RegistryResolutionException (the Quarkus extension registry could not be resolved/initialized), it is rethrown as a RuntimeException 'Failed to initialize the Quarkus Maven extension manager'.","triggerScenarios":"Any devtools API/command path that calls getCachedProject on a Maven project when registry resolution fails — unreachable registry URL, invalid registry descriptor, or TLS/proxy errors inside MavenProjectBuildFile.getProject.","commonSituations":"Offline or firewalled environments; corporate proxy blocking registry.quarkus.io; misconfigured quarkus.registry property; self-signed certificates; registry outage.","solutions":["Verify network access to the registry and fix proxy/TLS settings (https_proxy, JVM truststore).","Correct the quarkus.registry configuration to a valid registry descriptor URL.","Retry when the registry outage ends; check the registry service status.","Use a locally cached/mirrored registry for offline builds."],"exampleFix":"// before\nquarkus.registry=https://internal-registry.invalid/quarkus\n// after (or a reachable mirror)\nquarkus.registry=https://registry.quarkus.io","handlingStrategy":"retry","validationCode":"// Probe the registry before initializing the project\nHttpClient client = HttpClient.newHttpClient();\nHttpRequest req = HttpRequest.newBuilder(URI.create(registryUrl)).GET().build();\nHttpResponse<String> resp = client.send(req, HttpResponse.BodyHandlers.ofString());\nif (resp.statusCode() != 200) throw new IllegalStateException(\"Registry unreachable: \" + resp.statusCode());","typeGuard":null,"tryCatchPattern":"try {\n    project = QuarkusProjectHelper.getCachedProject(projectDir, log);\n} catch (RuntimeException e) {\n    if (\"Failed to initialize the Quarkus Maven extension manager\".equals(e.getMessage())) {\n        // inspect RegistryResolutionException cause: proxy/TLS/URL; fix and retry with backoff\n    } else throw e;\n}","preventionTips":["Verify registry URL and proxy/TLS configuration","Mirror the registry locally for offline/firewalled builds","Add retry with backoff for transient registry outages"],"tags":["registry","network","quarkus-cli","maven"],"backgroundTag":"quarkus-registry-resolution-failed","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"}