Skip to content

Commit dbc2c6e

Browse files
committed
skip lombok on empty projects
1 parent 7d7daa6 commit dbc2c6e

File tree

2 files changed

+15
-8
lines changed

2 files changed

+15
-8
lines changed

lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/Delombok.java

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,9 @@
33
import edu.umd.cs.findbugs.annotations.SuppressFBWarnings;
44
import lombok.Getter;
55
import lombok.Setter;
6+
import org.gradle.api.file.ConfigurableFileCollection;
67
import org.gradle.api.file.FileCollection;
7-
import org.gradle.api.tasks.InputFiles;
8-
import org.gradle.api.tasks.JavaExec;
9-
import org.gradle.api.tasks.Nested;
10-
import org.gradle.api.tasks.OutputDirectory;
8+
import org.gradle.api.tasks.*;
119

1210
import java.io.File;
1311
import java.util.stream.Collectors;
@@ -19,16 +17,25 @@ public class Delombok extends JavaExec {
1917
@Nested
2018
private DelombokOptions options = new DelombokOptions();
2119

20+
@Internal
21+
private final ConfigurableFileCollection input = getProject().files();
22+
2223
@InputFiles
23-
private FileCollection input;
24+
@SkipWhenEmpty
25+
protected FileCollection getNonEmptySourceRoots() {
26+
return getProject().files(
27+
getInput().getFiles().stream()
28+
.filter(File::isDirectory)
29+
.collect(Collectors.toList())
30+
);
31+
}
2432

2533
@SuppressFBWarnings(value = "RV_RETURN_VALUE_IGNORED_NO_SIDE_EFFECT", justification = "setMain() and args()")
2634
public Delombok() {
2735
setMain("lombok.launch.Main");
2836
args("delombok");
2937
getArgumentProviders().add(getOptions());
30-
getArgumentProviders().add(() -> getInput().getFiles().stream()
31-
.filter(File::isDirectory)
38+
getArgumentProviders().add(() -> getNonEmptySourceRoots().getFiles().stream()
3239
.map(File::getPath)
3340
.collect(Collectors.toList()));
3441
}

lombok-plugin/src/main/java/io/freefair/gradle/plugins/lombok/LombokPlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ private void configureJavaPluginDefaults() {
6666
delombok.getOptions().setEncoding(compileJava.getOptions().getEncoding());
6767
delombok.getOptions().setClasspath(compileJava.getClasspath());
6868
compileJava.getInputs().file(generateLombokConfig.getOutputFile());
69-
delombok.setInput(sourceSet.getAllJava().getSourceDirectories());
69+
delombok.getInput().from(sourceSet.getAllJava().getSourceDirectories());
7070
});
7171

7272
delombok.getOptions().setTarget(new File(delombokBaseDir, sourceSet.getName()));

0 commit comments

Comments
 (0)