quarkusio/quarkus · error · MojoExecutionException
Failed to list extension categories
Error message
Failed to list extension categories
What it means
ListCategoriesMojo (`mvn quarkus:list-categories`) fetches extension categories from the Quarkus extension registry. Any exception during that process (registry connectivity, model resolution, parsing) is wrapped as this MojoExecutionException.
Source
Thrown at devtools/maven/src/main/java/io/quarkus/maven/ListCategoriesMojo.java:42
protected String format;
@Override
public void doExecute(final QuarkusProject quarkusProject, final MessageWriter log) throws MojoExecutionException {
try {
ListCategories listExtensions = new ListCategories(quarkusProject)
.format(format);
listExtensions.execute();
if (DEFAULT_FORMAT.equalsIgnoreCase(format)) {
log.info("");
log.info(ListCategories.MORE_INFO_HINT, "-Dformat=full");
}
log.info("");
log.info(ListCategories.LIST_EXTENSIONS_HINT,
"`./mvnw quarkus:list-extensions -Dcategory=\"categoryId\"`");
} catch (Exception e) {
throw new MojoExecutionException("Failed to list extension categories", e);
}
}
}
View on GitHub (pinned to e1c734241f)
Solutions
- Verify connectivity to the Quarkus registry and fix proxy/DNS issues
- Check quarkus.registry settings in pom.xml or settings
- Re-run with -e to see the root cause from the wrapped Exception
- Bypass corporate firewall by mirroring the registry locally
- Retry after transient registry outage
Example fix
// before mvn quarkus:list-categories # timeout behind proxy // after mvn -Dquarkus.registry=https://mirror.corp/quarkus quarkus:list-categories
Defensive patterns
Strategy: try-catch
Validate before calling
curl -fsS https://registry.quarkus.io/extensions/all -o /dev/null || echo "registry unreachable"
Try / catch
try {
// mvn quarkus:list-categories
} catch (MojoExecutionException e) {
log.error("Category listing failed, cause=" + e.getCause());
// fall back to bundled platform metadata or retry later
} Prevention
- Pin a known-good registry URL
- Cache registry responses offline for air-gapped use
- Check registry status before scheduled CI jobs
When it happens
Trigger: Running `mvn quarkus:list-categories` when the extension registry cannot be reached, returns invalid data, or the project's application model cannot be resolved first.
Common situations: No internet access in CI; wrong quarkus.registry configuration; registry outage; malformed project POM preventing model resolution.
Related errors
- Failed to resolve Quarkus extension catalog
- Failed to resolve the extension catalog for stream '${stream
- Failed to resolve the available updates
- Failed to initialize Quarkus Maven extension manager
- Failed to resolve the catalog of Quarkus platforms
AI-assisted analysis of quarkusio/quarkus@e1c734241f (2026-09-05).
Data as JSON: /api/errors/37c9f8e4a5201bdd.
Report an issue: GitHub.