quarkusio/quarkus · error · ConfigurationException
Unable to find file referenced in '" + RedisConfig.getProper
Error message
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. What it means
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.
Source
Thrown at extensions/redis-client/deployment/src/main/java/io/quarkus/redis/deployment/client/RedisClientProcessor.java:275
List<String> paths = new ArrayList<>();
for (String importFile : importFiles) {
Path loadScriptPath;
try {
loadScriptPath = applicationArchivesBuildItem.getRootArchive().getChildPath(importFile);
} catch (RuntimeException e) {
throw new ConfigurationException(
"Unable to interpret path referenced in '"
+ RedisConfig.getPropertyName(name, "redis-load-script") + "="
+ String.join(",", importFiles)
+ "': " + e.getMessage());
}
if (loadScriptPath != null && !Files.isDirectory(loadScriptPath)) {
// enlist resource if present
nativeImageResources.produce(new NativeImageResourceBuildItem(importFile));
} else if (clientConfig != null && clientConfig.loadScript().isPresent()) {
//raise exception if explicit file is not present (i.e. not the default)
throw new ConfigurationException(
"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.");
}
// in dev mode we want to make sure that we watch for changes to file even if it doesn't currently exist
// as a user could still add it after performing the initial configuration
hotDeploymentWatchedFiles.produce(new HotDeploymentWatchedFileBuildItem(importFile));
if (loadScriptPath != null) {
paths.add(importFile);
}
}
if (!paths.isEmpty()) {
if (clientConfig != null) {
recorder.preload(name, paths, clientConfig.flushBeforeLoad(), clientConfig.loadOnlyIfEmpty());
} else {View on GitHub (pinned to e1c734241f)
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
Example fix
// before quarkus.redis.default.redis-load-script=redis/Load.Script // after (file is src/main/resources/redis/load.script) quarkus.redis.default.redis-load-script=redis/load.script
Defensive patterns
Strategy: validation
Validate before calling
String prop = "redis/load.script";
if (getClass().getClassLoader().getResource(prop) == null)
throw new IllegalStateException("redis-load-script resource missing from archive: " + prop); Prevention
- 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
When it happens
Trigger: 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.
Common situations: 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.
Related errors
- Unable to interpret path referenced in '" + RedisConfig.getP
- Unable to find file referenced in '<puPropertyKey(persistenc
- Thread pool class not found: ${threadPoolClass}
- Could not load exception mapper
- Failed to load CodeGenProvider class from deployment classlo
AI-assisted analysis of quarkusio/quarkus@e1c734241f (2026-09-05).
Data as JSON: /api/errors/88ab7880caccdd66.
Report an issue: GitHub.