quarkusio/quarkus · error · RuntimeException
No Quarkus platforms found in the project
Error message
No Quarkus platforms found in the project
What it means
importedPlatforms() resolves the imported BOMs and builds a list of platform ArtifactCoords. Even when BOMs exist, if none of them resolve to an actual Quarkus platform (with a JSON descriptor), it throws RuntimeException("No Quarkus platforms found in the project"). This means BOMs are present but none is a recognized Quarkus platform.
Source
Thrown at devtools/gradle/gradle-application-plugin/src/main/java/io/quarkus/gradle/tasks/QuarkusPlatformTask.java:103
final Configuration boms = project.getConfigurations()
.detachedConfiguration(bomDeps.toArray(new org.gradle.api.artifacts.Dependency[0]));
final Set<ArtifactKey> processedKeys = new HashSet<>(1);
List<ArtifactCoords> platforms = new ArrayList<>();
boms.getResolutionStrategy().eachDependency(d -> {
if (!d.getTarget().getName().endsWith(BootstrapConstants.PLATFORM_DESCRIPTOR_ARTIFACT_ID_SUFFIX)
|| !processedKeys.add(ArtifactKey.ga(d.getTarget().getGroup(), d.getTarget().getName()))) {
return;
}
final ArtifactCoords platform = ArtifactCoords.of(d.getTarget().getGroup(), d.getTarget().getName(),
d.getTarget().getVersion(), "json", d.getTarget().getVersion());
platforms.add(platform);
});
boms.getResolvedConfiguration();
if (platforms.isEmpty()) {
throw new RuntimeException("No Quarkus platforms found in the project");
}
return platforms;
}
protected String quarkusCoreVersion() {
final List<Dependency> bomDeps = listProjectBoms(project);
if (bomDeps.isEmpty()) {
throw new GradleException("No platforms detected in the project");
}
final Configuration boms = project.getConfigurations()
.detachedConfiguration(bomDeps.toArray(new org.gradle.api.artifacts.Dependency[0]));
final AtomicReference<String> quarkusVersionRef = new AtomicReference<>();
boms.getResolutionStrategy().eachDependency(d -> {
if (quarkusVersionRef.get() == null && d.getTarget().getName().equals("quarkus-core")
&& d.getTarget().getGroup().equals("io.quarkus")) {
quarkusVersionRef.set(d.getTarget().getVersion());View on GitHub (pinned to e1c734241f)
Solutions
- Add the Quarkus platform BOM (io.quarkus.platform:quarkus-bom:<version>) to the dependencies.
- Verify the imported platform version exists and publishes its catalog descriptor (check the Maven repository).
- Remove unrelated BOMs confusion by ensuring at least one io.quarkus.platform BOM is enforced.
Example fix
// before
dependencies {
implementation enforcedPlatform("org.springframework.boot:spring-boot-bom:3.2.0")
}
// after
dependencies {
implementation enforcedPlatform("io.quarkus.platform:quarkus-bom:3.15.1")
} Defensive patterns
Strategy: validation
Validate before calling
// ensure at least one Quarkus platform BOM among imported BOMs
def quarkusBom = configurations.implementation.allDependencies.any {
it.group == 'io.quarkus.platform' && it.artifactId?.startsWith('quarkus-bom')
}
assert quarkusBom : 'No Quarkus platform BOM imported' Try / catch
try { resolve platforms } catch (RuntimeException e) { if (e.message.contains('No Quarkus platforms found')) { /* verify BOM coordinates/version */ } } Prevention
- Use official io.quarkus.platform BOMs, not third-party or hand-rolled BOMs.
- Confirm the platform version exists on Maven Central / your repository.
- Do not exclude the platform descriptor resources from resolution.
When it happens
Trigger: listProjectBoms returns BOM dependencies, but after resolution none produce a platform entry — e.g. importing unrelated/non-Quarkus BOMs, or a BOM with an invalid/missing platform descriptor whose resolution yields nothing.
Common situations: Importing only third-party BOMs (Spring BOM, etc.) plus Quarkus extensions without a Quarkus platform BOM; using an old quarkus-bom artifact layout; version that doesn't publish the platform JSON descriptor.
Related errors
- No platforms detected in the project
- Failed to determine the Quarkus core version for the project
- Failed to import platform properties
- Failed to add platform properties + artifact
- Failed to initialize Quarkus extension catalog resolver
AI-assisted analysis of quarkusio/quarkus@e1c734241f (2026-09-05).
Data as JSON: /api/errors/02a5ab8d3e64ee0e.
Report an issue: GitHub.