Skip to content

Commit 7c7c34c

Browse files
committed
Fix classpath roots of AOT test processing
This was regressed in 6175c42 so that each class on the classpath was passed in as a "root". This commit corrects this so that only the roots are passed to the AOT test processor. See gh-32424
1 parent d7537bf commit 7c7c34c

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/plugin/SpringBootAotPlugin.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ private void configureAotTask(Project project, SourceSet sourceSet, AbstractAot
138138
task.getClassesOutput().set(generatedClasses);
139139
task.getGroupId().set(project.provider(() -> String.valueOf(project.getGroup())));
140140
task.getArtifactId().set(project.provider(() -> project.getName()));
141-
task.setInputClasses(inputSourceSet.getOutput().getClassesDirs());
141+
task.setClasspathRoots(inputSourceSet.getOutput().getClassesDirs());
142142
}
143143

144144
private void configureDependsOn(Project project, SourceSet aotSourceSet,

spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/tasks/aot/AbstractAot.java

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121

2222
import org.gradle.api.file.DirectoryProperty;
2323
import org.gradle.api.file.FileCollection;
24+
import org.gradle.api.file.FileTree;
2425
import org.gradle.api.provider.Property;
2526
import org.gradle.api.tasks.IgnoreEmptyDirectories;
2627
import org.gradle.api.tasks.Input;
@@ -52,7 +53,7 @@ public abstract class AbstractAot extends JavaExec {
5253

5354
private final Property<String> artifactId;
5455

55-
private FileCollection inputClasses;
56+
private FileCollection classpathRoots;
5657

5758
protected AbstractAot() {
5859
this.sourcesDir = getProject().getObjects().directoryProperty();
@@ -87,16 +88,22 @@ public final DirectoryProperty getClassesOutput() {
8788
return this.classesDir;
8889
}
8990

91+
@InputFiles
92+
@PathSensitive(PathSensitivity.RELATIVE)
93+
public final FileCollection getClasspathRoots() {
94+
return this.classpathRoots;
95+
}
96+
9097
@InputFiles
9198
@SkipWhenEmpty
9299
@IgnoreEmptyDirectories
93100
@PathSensitive(PathSensitivity.RELATIVE)
94-
public final FileCollection getInputClasses() {
95-
return this.inputClasses.getAsFileTree();
101+
final FileTree getInputClasses() {
102+
return this.classpathRoots.getAsFileTree();
96103
}
97104

98-
public void setInputClasses(FileCollection inputClasses) {
99-
this.inputClasses = inputClasses;
105+
public void setClasspathRoots(FileCollection classpathRoots) {
106+
this.classpathRoots = classpathRoots;
100107
}
101108

102109
List<String> processorArgs() {

spring-boot-project/spring-boot-tools/spring-boot-gradle-plugin/src/main/java/org/springframework/boot/gradle/tasks/aot/ProcessTestAot.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ FileCollection getJUnitPlatformLauncher() {
6969
@TaskAction
7070
public void exec() {
7171
List<String> args = new ArrayList<>();
72-
args.add(this.getInputClasses().getFiles().stream().filter(File::exists).map(File::getAbsolutePath)
72+
args.add(this.getClasspathRoots().getFiles().stream().filter(File::exists).map(File::getAbsolutePath)
7373
.collect(Collectors.joining(File.pathSeparator)));
7474
args.addAll(processorArgs());
7575
this.setArgs(args);

0 commit comments

Comments
 (0)