{"record":{"id":"3d1c8ca804d5066b","repo":"quarkusio/quarkus","slug":"invalid-configuration-value-set-for-quarkus-arc-r","errorCode":null,"errorMessage":"Invalid configuration value set for 'quarkus.arc.remove-unused-beans'. Please use one of all, true, false","messagePattern":"Invalid configuration value set for 'quarkus\\.arc\\.remove-unused-beans'\\. Please use one of all, true, false","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"extensions/arc/deployment/src/main/java/io/quarkus/arc/deployment/ArcProcessor.java","lineNumber":182,"sourceCode":"            List<AnnotationsTransformerBuildItem> annotationTransformers,\n            List<InjectionPointTransformerBuildItem> injectionPointTransformers,\n            List<ObserverTransformerBuildItem> observerTransformers,\n            List<InterceptorBindingRegistrarBuildItem> interceptorBindingRegistrars,\n            List<QualifierRegistrarBuildItem> qualifierRegistrars,\n            List<StereotypeRegistrarBuildItem> stereotypeRegistrars,\n            List<ApplicationClassPredicateBuildItem> applicationClassPredicates,\n            List<AdditionalBeanBuildItem> additionalBeans,\n            List<ResourceAnnotationBuildItem> resourceAnnotations,\n            List<BeanDefiningAnnotationBuildItem> additionalBeanDefiningAnnotations,\n            List<SuppressConditionGeneratorBuildItem> suppressConditionGenerators,\n            Optional<TestClassPredicateBuildItem> testClassPredicate,\n            Capabilities capabilities,\n            CustomScopeAnnotationsBuildItem customScopes,\n            LaunchModeBuildItem launchModeBuildItem,\n            BuildProducer<CompletedApplicationClassPredicateBuildItem> applicationClassPredicateProducer) {\n\n        if (!arcConfig.isRemoveUnusedBeansFieldValid()) {\n            throw new IllegalArgumentException(\"Invalid configuration value set for 'quarkus.arc.remove-unused-beans'.\" +\n                    \" Please use one of \" + ArcConfig.ALLOWED_REMOVE_UNUSED_BEANS_VALUES);\n        }\n\n        // bean type -> default scope (may be null)\n        Map<String, DotName> additionalBeanTypes = new HashMap<>();\n        for (AdditionalBeanBuildItem additionalBean : additionalBeans) {\n            DotName defaultScope = additionalBean.getDefaultScope();\n            for (String beanClass : additionalBean.getBeanClasses()) {\n                DotName existingDefaultScope = additionalBeanTypes.get(beanClass);\n                if (existingDefaultScope != null && defaultScope != null && !existingDefaultScope.equals(defaultScope)) {\n                    throw new IllegalStateException(\"Different default scopes defined for additional bean class: \" + beanClass\n                            + \"\\n\\t - scopes: \" + defaultScope + \" and \"\n                            + existingDefaultScope);\n                }\n                additionalBeanTypes.put(beanClass, defaultScope);\n            }\n        }\n","sourceCodeStart":164,"sourceCodeEnd":200,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/extensions/arc/deployment/src/main/java/io/quarkus/arc/deployment/ArcProcessor.java#L164-L200","documentation":"The ArcProcessor validates the quarkus.arc.remove-unused-beans config property at build time. Only 'all', 'true' and 'false' are accepted; any other value fails application startup during augmentation with IllegalArgumentException.","triggerScenarios":"Setting quarkus.arc.remove-unused-beans to anything other than all, true, or false (e.g. 'none', 'junk', a typo, or a quoted/whitespace-laden value) in application.properties or via env vars/CLI.","commonSituations":"Config typos like remove-unused-beans=none; copying old values from deprecated configs; env var QUARKUS_ARC_REMOVE_UNUSED_BEANS set incorrectly in CI.","solutions":["Set the property to one of: all, true, false","Remove the property entirely if unused-bean removal is not needed","Check the resolved value with quarkus:dev config dump or quarkus.log.category lookup to find where it is set"],"exampleFix":"// before\nquarkus.arc.remove-unused-beans=none\n// after\nquarkus.arc.remove-unused-beans=all","handlingStrategy":"validation","validationCode":"Set<String> allowed = Set.of(\"all\", \"true\", \"false\");\nString v = System.getProperty(\"quarkus.arc.remove-unused-beans\", \"\");\nif (!v.isEmpty() && !allowed.contains(v)) throw new IllegalArgumentException(\"quarkus.arc.remove-unused-beans must be one of \" + allowed);","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Validate app config in CI before augmentation","Grep application.properties and env vars for the property","Stick to documented values only"],"tags":["quarkus","arc","configuration","build-time"],"backgroundTag":"invalid-config-value","analyzedSha":"e1c734241f34c7919086ceb4c9262b4a58f6de44","analyzedAt":"2026-09-05T17:01:29.979Z","contentChangedAt":"2026-09-05T17:01:29.979Z","schemaVersion":2},"datasetVersion":"2026-09-12T22:17:10.623Z"}