{"record":{"id":"43687d071c06a821","repo":"quarkusio/quarkus","slug":"failed-to-list-platforms","errorCode":null,"errorMessage":"Failed to list platforms","messagePattern":"Failed to list platforms","errorType":"exception","errorClass":"MojoExecutionException","httpStatus":null,"severity":"error","filePath":"devtools/maven/src/main/java/io/quarkus/maven/ListPlatformsMojo.java","lineNumber":40,"sourceCode":"    protected boolean installed;\n\n    @Override\n    public void doExecute(final QuarkusProject quarkusProject, final MessageWriter log) throws MojoExecutionException {\n        if (installed) {\n            getImportedPlatforms().forEach(coords -> {\n                final StringBuilder buf = new StringBuilder();\n                buf.append(coords.getGroupId()).append(\":\")\n                        .append(coords.getArtifactId().substring(0,\n                                coords.getArtifactId().length() - Constants.PLATFORM_DESCRIPTOR_ARTIFACT_ID_SUFFIX.length()))\n                        .append(\"::pom:\").append(coords.getVersion());\n                log.info(buf.toString());\n            });\n            return;\n        }\n        try {\n            new ListPlatforms(quarkusProject).execute();\n        } catch (Exception e) {\n            throw new MojoExecutionException(\"Failed to list platforms\", e);\n        }\n    }\n}\n","sourceCodeStart":22,"sourceCodeEnd":44,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/devtools/maven/src/main/java/io/quarkus/maven/ListPlatformsMojo.java#L22-L44","documentation":"ListPlatformsMojo (`mvn quarkus:list-platforms`) lists Quarkus platforms known to the configured registry. Any exception from executing the ListPlatforms command is wrapped as this MojoExecutionException.","triggerScenarios":"Running `mvn quarkus:list-platforms` when the registry request fails (network, DNS, HTTP error) or the quarkus project bootstrap fails.","commonSituations":"Air-gapped environments; invalid quarkus.registry URL; TLS certificate issues with custom CAs; registry service outage.","solutions":["Verify quarkus.registry is a valid reachable URL","Fix TLS trust (import corporate CA into the JVM truststore) if certificates fail","Check proxy/firewall rules blocking the registry host","Re-run with -e for root cause","Retry on transient registry errors"],"exampleFix":"// before\n-Dquarkus.registry=registry.quarkus.io  // missing scheme\n// after\n-Dquarkus.registry=https://registry.quarkus.io","handlingStrategy":"try-catch","validationCode":"// validate the registry URL is well-formed and reachable before invoking\nURI r = URI.create(\"https://registry.quarkus.io\");\nassert r.getScheme() != null; // must be https","typeGuard":null,"tryCatchPattern":"try {\n    // mvn quarkus:list-platforms\n} catch (MojoExecutionException e) {\n    log.error(\"Platform listing failed: \" + e.getCause().getMessage());\n}","preventionTips":["Always use full https:// URLs for quarkus.registry","Import custom CAs into the JVM truststore","Fallback to local platform knowledge in offline environments"],"tags":["maven","registry","platforms"],"backgroundTag":"registry-unreachable","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"}