Skip to content

Commit

Permalink
Configure Java toolchain on AOT-processing tasks
Browse files Browse the repository at this point in the history
Closes gh-37717
  • Loading branch information
wilkinsona committed Oct 11, 2023
1 parent 5a6cd77 commit a80f8ea
Showing 1 changed file with 9 additions and 0 deletions.
Expand Up @@ -39,6 +39,8 @@
import org.gradle.api.tasks.SourceSet;
import org.gradle.api.tasks.SourceSetContainer;
import org.gradle.api.tasks.TaskProvider;
import org.gradle.jvm.toolchain.JavaToolchainService;
import org.gradle.jvm.toolchain.JavaToolchainSpec;

import org.springframework.boot.gradle.tasks.aot.AbstractAot;
import org.springframework.boot.gradle.tasks.aot.ProcessAot;
Expand Down Expand Up @@ -149,6 +151,13 @@ private void configureAotTask(Project project, SourceSet sourceSet, AbstractAot
.set(project.getLayout().getBuildDirectory().dir("generated/" + sourceSet.getName() + "Classes"));
task.getGroupId().set(project.provider(() -> String.valueOf(project.getGroup())));
task.getArtifactId().set(project.provider(() -> project.getName()));
configureToolchainConvention(project, task);
}

private void configureToolchainConvention(Project project, AbstractAot aotTask) {
JavaToolchainSpec toolchain = project.getExtensions().getByType(JavaPluginExtension.class).getToolchain();
JavaToolchainService toolchainService = project.getExtensions().getByType(JavaToolchainService.class);
aotTask.getJavaLauncher().convention(toolchainService.launcherFor(toolchain));
}

@SuppressWarnings({ "unchecked", "rawtypes" })
Expand Down

0 comments on commit a80f8ea

Please sign in to comment.