@@ -65,7 +65,6 @@ public abstract class DefaultGraalVmExtension implements GraalVMExtension {
6565 private final Project project ;
6666 private final Map <String , Provider <Boolean >> agentProperties = new HashMap <>();
6767 private final Property <JavaLauncher > defaultJavaLauncher ;
68- private final JavaToolchainService toolchainService ;
6968
7069 @ Inject
7170 public DefaultGraalVmExtension (NamedDomainObjectContainer <NativeImageOptions > nativeImages ,
@@ -74,7 +73,6 @@ public DefaultGraalVmExtension(NamedDomainObjectContainer<NativeImageOptions> na
7473 this .nativeImages = nativeImages ;
7574 this .plugin = plugin ;
7675 this .project = project ;
77- this .toolchainService = project .getExtensions ().getByType (JavaToolchainService .class );
7876 this .defaultJavaLauncher = project .getObjects ().property (JavaLauncher .class );
7977 getToolchainDetection ().convention (true );
8078 nativeImages .configureEach (options -> options .getJavaLauncher ().convention (defaultJavaLauncher ));
@@ -86,12 +84,15 @@ private void configureToolchain() {
8684 defaultJavaLauncher .convention (
8785 getToolchainDetection ().flatMap (enabled -> {
8886 if (enabled ) {
89- return toolchainService .launcherFor (spec -> {
90- spec .getLanguageVersion ().set (JavaLanguageVersion .of (JavaVersion .current ().getMajorVersion ()));
91- if (GradleUtils .isAtLeastGradle7 ()) {
92- spec .getVendor ().set (JvmVendorSpec .matching ("GraalVM" ));
93- }
94- });
87+ JavaToolchainService toolchainService = project .getExtensions ().findByType (JavaToolchainService .class );
88+ if (toolchainService != null ) {
89+ return toolchainService .launcherFor (spec -> {
90+ spec .getLanguageVersion ().set (JavaLanguageVersion .of (JavaVersion .current ().getMajorVersion ()));
91+ if (GradleUtils .isAtLeastGradle7 ()) {
92+ spec .getVendor ().set (JvmVendorSpec .matching ("GraalVM" ));
93+ }
94+ });
95+ }
9596 }
9697 return null ;
9798 })
0 commit comments