quarkusio/quarkus · error · GradleException
Failed to collect Quarkus project information
Error message
Failed to collect Quarkus project information
What it means
QuarkusInfo.logInfo builds a ProjectInfo invoker over the Quarkus project and executes it to collect and log per-module project/application-model information. Any Exception thrown during execution is wrapped in this GradleException, meaning Quarkus could not gather the project model (module structure, app model) needed to print dev-mode info.
Source
Thrown at devtools/gradle/gradle-application-plugin/src/main/java/io/quarkus/gradle/tasks/QuarkusInfo.java:44
}
public QuarkusInfo() {
super("Log Quarkus-specific project information, such as imported Quarkus platform BOMs, Quarkus extensions found among the project dependencies, etc.");
}
@TaskAction
public void logInfo() {
getLogger().warn(getName() + " is experimental, its options and output might change in future versions");
final QuarkusProject quarkusProject = getQuarkusProject(false);
final QuarkusCommandOutcome outcome;
final ProjectInfo invoker = new ProjectInfo(quarkusProject);
invoker.perModule(perModule);
invoker.appModel(extension().getApplicationModel());
try {
outcome = invoker.execute();
} catch (Exception e) {
throw new GradleException("Failed to collect Quarkus project information", e);
}
}
}
View on GitHub (pinned to e1c734241f)
Solutions
- Run ./gradlew quarkusDev --stacktrace to see the root cause wrapped by this exception.
- Run ./gradlew build (or at least ./gradlew classes) first to verify the project configures successfully.
- Refresh dependencies and clean caches if model resolution fails: --refresh-dependencies.
- Verify Gradle version compatibility with your Quarkus Gradle plugin version.
- Simplify/isolate the failing module to identify a misconfigured build script.
Example fix
// before: opaque failure ./gradlew quarkusDev // after: surface root cause ./gradlew quarkusDev --stacktrace --info
Defensive patterns
Strategy: try-catch
Validate before calling
// Verify the project configures and the model resolves before dev tasks ./gradlew help classes --stacktrace // a failure here indicates the same ProjectInfo execution would fail
Try / catch
try {
./gradlew quarkusDev
} catch (GradleException e) {
if (e.getMessage().equals("Failed to collect Quarkus project information")) {
// rerun with --stacktrace to act on the wrapped cause (config error, cache, model resolution)
}
} Prevention
- Keep build scripts healthy: run ./gradlew help after editing Gradle configuration.
- Use a Gradle version compatible with your Quarkus plugin release.
- Refresh caches with --refresh-dependencies after version upgrades.
- Test dev mode after adding custom plugins/scripts to the build.
When it happens
Trigger: Running a dev-mode/listing Gradle task that invokes QuarkusInfo.logInfo when ProjectInfo.execute() throws — e.g. invalid project model, unreadable build scripts, or failure resolving the application model via extension().getApplicationModel().
Common situations: Broken or misconfigured multi-module Gradle builds; a custom Gradle plugin/script throwing during configuration; corrupted Gradle caches preventing application model resolution; incompatible Quarkus Gradle plugin and Gradle version combinations.
Related errors
- Requested artifact ${appArtifact} does not match project ${g
- Classpath resource + pomPropsPath + is missing groupId
- Classpath resource + pomPropsPath + is missing artifactId
- Classpath resource + pomPropsPath + is missing version
- Failed to locate io.quarkus:quarkus-core-deployment on the a
AI-assisted analysis of quarkusio/quarkus@e1c734241f (2026-09-05).
Data as JSON: /api/errors/0768dffe5679fcd7.
Report an issue: GitHub.