{"record":{"id":"88ab7880caccdd66","repo":"quarkusio/quarkus","slug":"unable-to-find-file-referenced-in-redisconfig","errorCode":null,"errorMessage":"Unable to find file referenced in '\" + RedisConfig.getPropertyName(name, \"redis-load-script\") + \"=\" + String.join(\", \", clientConfig.loadScript().get()) + \"'. Remove property or add file to your path.","messagePattern":"Unable to find file referenced in '\" \\+ RedisConfig\\.getPropertyName\\(name, \"redis-load-script\"\\) \\+ \"=\" \\+ String\\.join\\(\", \", clientConfig\\.loadScript\\(\\)\\.get\\(\\)\\) \\+ \"'\\. Remove property or add file to your path\\.","errorType":"exception","errorClass":"ConfigurationException","httpStatus":null,"severity":"error","filePath":"extensions/redis-client/deployment/src/main/java/io/quarkus/redis/deployment/client/RedisClientProcessor.java","lineNumber":275,"sourceCode":"        List<String> paths = new ArrayList<>();\n        for (String importFile : importFiles) {\n            Path loadScriptPath;\n            try {\n                loadScriptPath = applicationArchivesBuildItem.getRootArchive().getChildPath(importFile);\n            } catch (RuntimeException e) {\n                throw new ConfigurationException(\n                        \"Unable to interpret path referenced in '\"\n                                + RedisConfig.getPropertyName(name, \"redis-load-script\") + \"=\"\n                                + String.join(\",\", importFiles)\n                                + \"': \" + e.getMessage());\n            }\n\n            if (loadScriptPath != null && !Files.isDirectory(loadScriptPath)) {\n                // enlist resource if present\n                nativeImageResources.produce(new NativeImageResourceBuildItem(importFile));\n            } else if (clientConfig != null && clientConfig.loadScript().isPresent()) {\n                //raise exception if explicit file is not present (i.e. not the default)\n                throw new ConfigurationException(\n                        \"Unable to find file referenced in '\"\n                                + RedisConfig.getPropertyName(name, \"redis-load-script\") + \"=\"\n                                + String.join(\", \", clientConfig.loadScript().get())\n                                + \"'. Remove property or add file to your path.\");\n            }\n            // in dev mode we want to make sure that we watch for changes to file even if it doesn't currently exist\n            // as a user could still add it after performing the initial configuration\n            hotDeploymentWatchedFiles.produce(new HotDeploymentWatchedFileBuildItem(importFile));\n\n            if (loadScriptPath != null) {\n                paths.add(importFile);\n            }\n        }\n\n        if (!paths.isEmpty()) {\n            if (clientConfig != null) {\n                recorder.preload(name, paths, clientConfig.flushBeforeLoad(), clientConfig.loadOnlyIfEmpty());\n            } else {","sourceCodeStart":257,"sourceCodeEnd":293,"githubUrl":"https://github.com/quarkusio/quarkus/blob/e1c734241f34c7919086ceb4c9262b4a58f6de44/extensions/redis-client/deployment/src/main/java/io/quarkus/redis/deployment/client/RedisClientProcessor.java#L257-L293","documentation":"After attempting to resolve the redis-load-script path in the application archive, the processor throws a ConfigurationException if the property was explicitly set (i.e. is not the built-in default) but the file does not exist in the archive or resolves to a directory. The extension refuses to build because preloading data would silently do nothing.","triggerScenarios":"quarkus.redis.<name>.redis-load-script is set to a value that is not present under src/main/resources (or the packaged archive), or points at a directory instead of a file.","commonSituations":"Typo in the resource path; file present locally but excluded from the jar; file committed only in another module's resources; renaming/moving resources after upgrading; case-sensitive filesystems in CI where the filename's case differs.","solutions":["Add the script file to src/main/resources at exactly the configured path (e.g. redis/load.script)","Correct the property value to match the actual packaged file path, checking case sensitivity","Remove the redis-load-script property if you don't actually need data preloading","Check Maven resource filtering/excludes and ensure the file lands in target/classes"],"exampleFix":"// before\nquarkus.redis.default.redis-load-script=redis/Load.Script\n// after  (file is src/main/resources/redis/load.script)\nquarkus.redis.default.redis-load-script=redis/load.script","handlingStrategy":"validation","validationCode":"String prop = \"redis/load.script\";\nif (getClass().getClassLoader().getResource(prop) == null)\n    throw new IllegalStateException(\"redis-load-script resource missing from archive: \" + prop);","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Check the packaged jar/target/classes for the script before deploying","Watch case sensitivity of resource names on Linux CI","Keep script paths in one constant shared with config docs"],"tags":["quarkus","redis-client","configuration","classpath","missing-file"],"backgroundTag":"missing-resource-file","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"}