Skip to content

Commit e3ec14f

Browse files
committed
Running :spotlessCheck on Spotless no longer causes it to crash.
1 parent d12dbb8 commit e3ec14f

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

plugin-gradle/src/main/java/com/diffplug/gradle/spotless/FormatExtension.java

+6-3
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@
2424
import java.util.List;
2525
import java.util.Objects;
2626
import java.util.Random;
27+
import java.util.Set;
2728
import java.util.regex.Pattern;
29+
import java.util.stream.Collectors;
2830
import java.util.stream.Stream;
2931

3032
import org.gradle.api.GradleException;
@@ -136,9 +138,10 @@ protected FileCollection parseTarget(Object target) {
136138
} else if (target instanceof String ||
137139
(target instanceof List && ((List<?>) target).stream().allMatch(o -> o instanceof String))) {
138140
File dir = getProject().getProjectDir();
139-
Iterable<String> excludes = Arrays.asList(
140-
getProject().getBuildDir().toString() + File.separatorChar + "**",
141-
getProject().getProjectDir().toString() + File.separatorChar + ".gradle" + File.separatorChar + "**");
141+
Set<Project> subprojects = getProject().getSubprojects();
142+
Stream<String> buildDirs = subprojects.stream().map(subproject -> subproject.getBuildDir().toString() + File.separatorChar + "**");
143+
Stream<String> localDotGradleDirs = subprojects.stream().map(subproject -> subproject.getProjectDir().toString() + File.separatorChar + ".gradle" + File.separatorChar + "**");
144+
Iterable<String> excludes = Stream.concat(buildDirs, localDotGradleDirs).collect(Collectors.toList());
142145
if (target instanceof String) {
143146
return (FileCollection) getProject().fileTree(dir).include((String) target).exclude(excludes);
144147
} else {

0 commit comments

Comments
 (0)