diff --git a/jOOQ/src/main/java/org/jooq/FilePattern.java b/jOOQ/src/main/java/org/jooq/FilePattern.java index e0ce94aa34..203e661a70 100644 --- a/jOOQ/src/main/java/org/jooq/FilePattern.java +++ b/jOOQ/src/main/java/org/jooq/FilePattern.java @@ -207,16 +207,17 @@ public final class FilePattern { public final void load(Loader loader) { boolean loaded = false; URL url = FilePattern.class.getResource(pattern); + File file = null; try { if (url != null) { log.info("Reading from classpath: " + pattern); - loader.load(Source.of(new File(url.toURI()), encoding)); + load0(new File(url.toURI()), loader); loaded = true; } else { - File file = new File(pattern); + file = new File(pattern); if (file.exists()) { load(file, comparator, null, loader); @@ -273,7 +274,7 @@ public final class FilePattern { if (file.isFile()) { if (regex == null || regex.matcher(file.getCanonicalPath().replace("\\", "/")).matches()) { log.info("Reading from: " + file + " [*]"); - loader.load(Source.of(file, encoding)); + load0(file, loader); } } else if (file.isDirectory()) { @@ -291,6 +292,16 @@ public final class FilePattern { } } + private final void load0(File file, Loader loader) { + try { + loader.load(Source.of(file, encoding)); + } + catch (Exception e) { + log.error("Error while loading file: " + file); + throw e; + } + } + @Override public String toString() { return pattern;