diff --git a/src/main/java/com/kobylynskyi/graphql/codegen/model/UnableToCreateDirectoryException.java b/src/main/java/com/kobylynskyi/graphql/codegen/model/UnableToCreateDirectoryException.java index cf5a10738..3b15995cb 100644 --- a/src/main/java/com/kobylynskyi/graphql/codegen/model/UnableToCreateDirectoryException.java +++ b/src/main/java/com/kobylynskyi/graphql/codegen/model/UnableToCreateDirectoryException.java @@ -7,8 +7,8 @@ */ public class UnableToCreateDirectoryException extends RuntimeException { - public UnableToCreateDirectoryException(String directoryPath) { - super("Unable to create directory by path: " + directoryPath); + public UnableToCreateDirectoryException(String directoryPath, Exception e) { + super("Unable to create directory by path: " + directoryPath, e); } } diff --git a/src/main/java/com/kobylynskyi/graphql/codegen/utils/Utils.java b/src/main/java/com/kobylynskyi/graphql/codegen/utils/Utils.java index 608d54a7a..6bc7f200f 100644 --- a/src/main/java/com/kobylynskyi/graphql/codegen/utils/Utils.java +++ b/src/main/java/com/kobylynskyi/graphql/codegen/utils/Utils.java @@ -128,9 +128,10 @@ public static void createDirIfAbsent(File dir) { if (dir.exists()) { return; } - boolean outputDirCreated = dir.mkdirs(); - if (!outputDirCreated) { - throw new UnableToCreateDirectoryException(dir.getName()); + try { + Files.createDirectories(dir.toPath()); + } catch (IOException e) { + throw new UnableToCreateDirectoryException(dir.getName(), e); } }