quarkusio/quarkus · error · IllegalArgumentException

${coords} is not a POM

Error message

${coords} is not a POM

What it means

RuntimeException from MavenProjectBuildFile.importBom: a BOM whose coordinates are not of type 'pom' was passed for import. Only pom-type artifacts can be imported as BOMs into the dependency management, so the non-pom coordinates (interpolated into the message) are rejected.

Source

Thrown at independent-projects/tools/devtools-common/src/main/java/io/quarkus/devtools/project/buildfile/MavenProjectBuildFile.java:233

            List<ArtifactCoords> projectManagedDeps,
            Properties projectProps, MavenArtifactResolver resolver) {
        super(projectDirPath, extensionsCatalog);
        this.model = model;
        this.projectDepsSupplier = projectDeps;
        this.managedDependencies = projectManagedDeps;
        this.projectProps = projectProps;
        this.resolver = resolver;
    }

    @Override
    public BuildTool getBuildTool() {
        return BuildTool.MAVEN;
    }

    @Override
    protected boolean importBom(ArtifactCoords coords) {
        if (!ArtifactCoords.TYPE_POM.equals(coords.getType())) {
            throw new IllegalArgumentException(coords + " is not a POM");
        }
        final String depKey = depKey(coords.getGroupId(), coords.getArtifactId(), coords.getClassifier(), coords.getType());
        if (coords.getGroupId().equals(getProperty("quarkus.platform.group-id"))
                && coords.getVersion().equals(getProperty("quarkus.platform.version"))) {
            coords = ArtifactCoords.pom("${quarkus.platform.group-id}",
                    coords.getArtifactId().equals(getProperty("quarkus.platform.artifact-id"))
                            ? "${quarkus.platform.artifact-id}"
                            : coords.getArtifactId(),
                    "${quarkus.platform.version}");
        }

        final Dependency d = new Dependency();
        d.setGroupId(coords.getGroupId());
        d.setArtifactId(coords.getArtifactId());
        d.setType(coords.getType());
        d.setScope(io.quarkus.maven.dependency.Dependency.SCOPE_IMPORT);
        d.setVersion(coords.getVersion());
        DependencyManagement dependencyManagement = model().getDependencyManagement();

View on GitHub (pinned to e1c734241f)

Solutions

  1. Use the pom-type artifact coordinates for the BOM import
  2. Check that the catalog/BOM coordinate's type is 'pom'
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at independent-projects/tools/devtools-common/src/main/java/io/quarkus/devtools/project/buildfile/MavenProjectBuildFile.java:233 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of quarkusio/quarkus@e1c734241f (2026-09-05). Data as JSON: /api/errors/cd6bf1ee88463fc0. Report an issue: GitHub.