diff --git a/core/jreleaser-templates/src/main/java/org/jreleaser/templates/TemplateUtils.java b/core/jreleaser-templates/src/main/java/org/jreleaser/templates/TemplateUtils.java index 7e506141d..5715294e6 100644 --- a/core/jreleaser-templates/src/main/java/org/jreleaser/templates/TemplateUtils.java +++ b/core/jreleaser-templates/src/main/java/org/jreleaser/templates/TemplateUtils.java @@ -87,6 +87,10 @@ public static Map resolveTemplates(String distribution } Path actualTemplateDirectory = directory; + if (!Files.exists(actualTemplateDirectory)) { + return templates; + } + try { Files.walkFileTree(actualTemplateDirectory, new SimpleFileVisitor() { @Override @@ -99,7 +103,7 @@ public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IO } catch (IOException e) { String distributionTypeName = distributionType.toLowerCase(Locale.ENGLISH).replace('_', '-'); throw new JReleaserException(RB.$("ERROR_unexpected_reading_templates_distribution", - distributionTypeName, toolName, actualTemplateDirectory.toAbsolutePath())); + distributionTypeName, toolName, actualTemplateDirectory.toAbsolutePath()), e); } return templates; @@ -108,6 +112,10 @@ public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IO public static Map resolveTemplates(Path templateDirectory) { Map templates = new LinkedHashMap<>(); + if (!Files.exists(templateDirectory)) { + return templates; + } + try { Files.walkFileTree(templateDirectory, new SimpleFileVisitor() { @Override @@ -118,7 +126,7 @@ public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IO } }); } catch (IOException e) { - throw new JReleaserException(RB.$("ERROR_unexpected_reading_templates_from", templateDirectory.toAbsolutePath())); + throw new JReleaserException(RB.$("ERROR_unexpected_reading_templates_from", templateDirectory.toAbsolutePath()), e); } return templates;