diff --git a/examples/lombok/lombok.config b/examples/lombok/lombok.config index eaa94be9..9992f9dd 100644 --- a/examples/lombok/lombok.config +++ b/examples/lombok/lombok.config @@ -1,4 +1,4 @@ -import dummy/foo.config +#import dummy/foo.config config.stopbubbling = false lombok.allArgsConstructor.flagUsage=WARNING lombok.extern.findbugs.addSuppressFBWarnings = true diff --git a/lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/tasks/LombokConfig.java b/lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/tasks/LombokConfig.java index c619afd9..8d5960ae 100644 --- a/lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/tasks/LombokConfig.java +++ b/lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/tasks/LombokConfig.java @@ -24,6 +24,7 @@ import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; +import java.nio.file.Files; import java.util.*; import java.util.stream.Collectors; @@ -78,8 +79,7 @@ public class LombokConfig extends DefaultTask implements LombokTask { /** * Paths to java files or directories the configuration is to be printed for. */ - @InputFiles - @PathSensitive(PathSensitivity.ABSOLUTE) + @Internal private final ConfigurableFileCollection paths = getProject().getObjects().fileCollection(); @OutputFile @@ -97,6 +97,14 @@ public LombokConfig(WorkerExecutor workerExecutor, FileSystemOperations fileSyst getOutputs().upToDateWhen(t -> ((LombokConfig) t).getConfigFiles() != null); } + @Input + protected List getInputPaths() { + return getPaths().getFiles() + .stream() + .map(File::getPath) + .collect(Collectors.toList()); + } + @InputFiles @Optional @Nullable @@ -158,7 +166,7 @@ public void exec() throws IOException { } if (fork.getOrElse(false)) { - try (OutputStream out = new FileOutputStream(outputFile.getAsFile().get())) { + try (OutputStream out = Files.newOutputStream(outputFile.getAsFile().get().toPath())) { execOperations.javaexec(config -> { if (launcher.isPresent()) {