Skip to content

Commit d84733e

Browse files
committed
[GR-60190] Improve suitable JDK version lookup for Gradle build.
PullRequest: graalpython/3594
2 parents 957083e + a9d6f70 commit d84733e

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

mx.graalpython/mx_graalpython_gradleproject.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,9 +243,16 @@ def _run_gradle(args, **kwargs):
243243
kwargs.setdefault('env', os.environ.copy())
244244
env = kwargs.pop('env')
245245
if 'GRADLE_JAVA_HOME' not in env:
246-
env['GRADLE_JAVA_HOME'] = env.get('JAVA_HOME')
246+
def abortCallback(msg):
247+
mx.abort("Could not find a JDK of version between 17 and 21 to build a Gradle project.\n"
248+
"Export GRADLE_JAVA_HOME pointing to a suitable JDK "
249+
"or use the generic MX mechanism explained below:\n" + msg)
250+
jdk = mx.get_jdk('17..21', abortCallback=abortCallback)
251+
env['GRADLE_JAVA_HOME'] = jdk.home
252+
env['JAVA_HOME'] = jdk.home
247253
else:
248254
env['JAVA_HOME'] = env['GRADLE_JAVA_HOME']
255+
mx.logv("Building Gradle project using java: " + env['GRADLE_JAVA_HOME'])
249256
mx.run([gradle_command, *args], env=env, **kwargs)
250257

251258
# Gradle uses forward slashes in paths even on Windows

0 commit comments

Comments
 (0)