diff --git a/initializr-generator-spring/src/main/java/io/spring/initializr/generator/spring/properties/AbstractApplicationPropertiesContributor.java b/initializr-generator-spring/src/main/java/io/spring/initializr/generator/spring/properties/AbstractApplicationPropertiesContributor.java index 99dc5c14db..e4eabee3de 100644 --- a/initializr-generator-spring/src/main/java/io/spring/initializr/generator/spring/properties/AbstractApplicationPropertiesContributor.java +++ b/initializr-generator-spring/src/main/java/io/spring/initializr/generator/spring/properties/AbstractApplicationPropertiesContributor.java @@ -94,7 +94,10 @@ private void writeFile(SourceStructure sourceStructure, ProfileName profile, App throws IOException { Path output = resolveOutputFile(sourceStructure, profile); if (!Files.exists(output)) { - Files.createDirectories(output.getParent()); + Path parent = output.getParent(); + if (parent != null) { + Files.createDirectories(parent); + } Files.createFile(output); } try (PrintWriter writer = new PrintWriter(Files.newOutputStream(output, StandardOpenOption.APPEND), false, diff --git a/initializr-generator/src/main/java/io/spring/initializr/generator/language/java/JavaSourceCodeWriter.java b/initializr-generator/src/main/java/io/spring/initializr/generator/language/java/JavaSourceCodeWriter.java index 6c75a1af23..ae01219719 100644 --- a/initializr-generator/src/main/java/io/spring/initializr/generator/language/java/JavaSourceCodeWriter.java +++ b/initializr-generator/src/main/java/io/spring/initializr/generator/language/java/JavaSourceCodeWriter.java @@ -107,7 +107,10 @@ public void writeTo(SourceStructure structure, JavaSourceCode sourceCode) throws private void writeTo(SourceStructure structure, JavaCompilationUnit compilationUnit) throws IOException { Path output = structure.createSourceFile(compilationUnit.getPackageName(), compilationUnit.getName()); - Files.createDirectories(output.getParent()); + Path parent = output.getParent(); + if (parent != null) { + Files.createDirectories(parent); + } try (IndentingWriter writer = this.indentingWriterFactory.createIndentingWriter("java", Files.newBufferedWriter(output))) { writer.println("package " + compilationUnit.getPackageName() + ";"); diff --git a/initializr-generator/src/main/java/io/spring/initializr/generator/language/kotlin/KotlinSourceCodeWriter.java b/initializr-generator/src/main/java/io/spring/initializr/generator/language/kotlin/KotlinSourceCodeWriter.java index f22cdd9fa7..d13d156f6b 100644 --- a/initializr-generator/src/main/java/io/spring/initializr/generator/language/kotlin/KotlinSourceCodeWriter.java +++ b/initializr-generator/src/main/java/io/spring/initializr/generator/language/kotlin/KotlinSourceCodeWriter.java @@ -83,7 +83,10 @@ public void writeTo(SourceStructure structure, KotlinSourceCode sourceCode) thro private void writeTo(SourceStructure structure, KotlinCompilationUnit compilationUnit) throws IOException { Path output = structure.createSourceFile(compilationUnit.getPackageName(), compilationUnit.getName()); - Files.createDirectories(output.getParent()); + Path parent = output.getParent(); + if (parent != null) { + Files.createDirectories(parent); + } try (IndentingWriter writer = this.indentingWriterFactory.createIndentingWriter("kotlin", Files.newBufferedWriter(output))) { writer.println("package " + escapeKotlinKeywords(compilationUnit.getPackageName())); diff --git a/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/MultipleResourcesProjectContributor.java b/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/MultipleResourcesProjectContributor.java index c3437dae52..b16ef44a35 100644 --- a/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/MultipleResourcesProjectContributor.java +++ b/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/MultipleResourcesProjectContributor.java @@ -66,7 +66,10 @@ public void contribute(Path projectRoot) throws IOException { String filename = extractFileName(root.getURI(), resource.getURI()); Path output = projectRoot.resolve(filename); if (!Files.exists(output)) { - Files.createDirectories(output.getParent()); + Path parent = output.getParent(); + if (parent != null) { + Files.createDirectories(parent); + } Files.createFile(output); } FileCopyUtils.copy(resource.getInputStream(), Files.newOutputStream(output)); diff --git a/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/SingleResourceProjectContributor.java b/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/SingleResourceProjectContributor.java index d64c497847..4e601664d4 100644 --- a/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/SingleResourceProjectContributor.java +++ b/initializr-generator/src/main/java/io/spring/initializr/generator/project/contributor/SingleResourceProjectContributor.java @@ -57,7 +57,10 @@ public SingleResourceProjectContributor(String relativePath, String resourcePatt public void contribute(Path projectRoot) throws IOException { Path output = projectRoot.resolve(this.relativePath); if (!Files.exists(output)) { - Files.createDirectories(output.getParent()); + Path parent = output.getParent(); + if (parent != null) { + Files.createDirectories(parent); + } Files.createFile(output); } Resource resource = this.resolver.getResource(this.resourcePattern); diff --git a/initializr-metadata/src/main/java/io/spring/initializr/metadata/Repository.java b/initializr-metadata/src/main/java/io/spring/initializr/metadata/Repository.java index b15eb1e41e..c650f8740b 100644 --- a/initializr-metadata/src/main/java/io/spring/initializr/metadata/Repository.java +++ b/initializr-metadata/src/main/java/io/spring/initializr/metadata/Repository.java @@ -84,7 +84,7 @@ public void setSnapshotsEnabled(boolean snapshotsEnabled) { } @Override - public boolean equals(Object obj) { + public boolean equals(@Nullable Object obj) { if (this == obj) { return true; }