quarkusio/quarkus · error · IllegalArgumentException

Unexpected value: <config.devMode().generateDependencyGraphs

Error message

Unexpected value: <config.devMode().generateDependencyGraphs()>

What it means

ArcDevModeApiProcessor.generateDependencyGraphs() maps the quarkus.arc.dev-mode.generate-dependency-graphs enum (TRUE/FALSE/AUTO) to a boolean. Because the switch is exhaustive over the enum, the default branch is unreachable in practice; it throws IllegalArgumentException('Unexpected value: ...') defensively if an unknown constant appears (e.g. from a mismatched compiled enum).

Source

Thrown at extensions/arc/deployment/src/main/java/io/quarkus/arc/deployment/devui/ArcDevModeApiProcessor.java:223

            }
        }

        for (BeanInfo producer : declaringToProducers.getOrDefault(bean, Collections.emptyList())) {
            links.add(Link.producer(producer.getIdentifier(), bean.getIdentifier(), level));
            if (nodes.add(devBeanInfos.getBean(producer.getIdentifier()))) {
                // add transient dependents
                addNodesDependents(level + 1, root, nodes, links, producer, injectionPoints, declaringToProducers, resolver,
                        devBeanInfos, directDependents);
            }
        }
    }

    private boolean generateDependencyGraphs(ArcConfig config, DevBeanInfos beanInfos) {
        return switch (config.devMode().generateDependencyGraphs()) {
            case TRUE -> true;
            case FALSE -> false;
            case AUTO -> beanInfos.getBeans().size() < DEPENCENY_GRAPH_BEANS_LIMIT;
            default -> throw new IllegalArgumentException("Unexpected value: " + config.devMode().generateDependencyGraphs());
        };
    }

}

View on GitHub (pinned to e1c734241f)

Solutions

  1. Run a clean full build: ./mvnw clean install -Dquickly (or clean the arc deployment module)
  2. Check quarkus.arc.dev-mode.generate-dependency-graphs is set to true/false/auto only
  3. Align all Quarkus module versions (no mixed snapshot/release on the classpath)
  4. If a custom enum constant was added, update the switch to handle it

Example fix

// application.properties
// before: quarkus.arc.dev-mode.generate-dependency-graphs=maybe (invalid)
// after:  quarkus.arc.dev-mode.generate-dependency-graphs=auto
Defensive patterns

Strategy: validation

Validate before calling

// application.properties: only true|false|auto
// quarkus.arc.dev-mode.generate-dependency-graphs=auto

Prevention

When it happens

Trigger: An unexpected/unknown value of the ArcConfig devMode().generateDependencyGraphs() enum reaching the switch — practically only possible with binary-incompatible enum changes between compiled modules.

Common situations: Stale compiled classes after a Quarkus version bump (mixed module versions in the local build); IDE incremental compilation out of sync; custom patches adding a new enum constant.

Related errors


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