[Enhancement] Make gen_build_version.py robust when JAVA_HOME is unset (#62785)

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
This commit is contained in:
Harbor Liu 2025-09-05 18:47:00 +08:00 committed by GitHub
parent 353ee2e652
commit 09fd6e9d24
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 13 additions and 5 deletions

View File

@ -86,11 +86,19 @@ def get_build_arch():
def get_java_version():
java_home = os.getenv("JAVA_HOME")
java_res = subprocess.Popen([java_home + "/bin/java", "-fullversion"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
out, err = java_res.communicate()
if java_res.returncode == 0:
return out.decode('utf-8').replace("\"", "\\\"").strip()
java_cmd = None
if java_home:
java_cmd = java_home + "/bin/java"
else:
# Fallback to system java on PATH
java_cmd = "java"
try:
java_res = subprocess.Popen([java_cmd, "-fullversion"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
out, _ = java_res.communicate()
if java_res.returncode == 0:
return out.decode('utf-8').replace("\"", "\\\"").strip()
except Exception:
pass
return "unknown jdk"
def get_fingerprint(items):