Skip to content

Commit 8aae765

Browse files
authored
Merge pull request LeeKamentsky#196 from LeeKamentsky/openjdk-17
issue #28 if openjdk >= 1.8, descend only 2 directories
2 parents bebed64 + 9bdaa18 commit 8aae765

1 file changed

Lines changed: 11 additions & 1 deletion

File tree

javabridge/locate.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,17 @@ def get_out(cmd):
121121
java_dir = get_out(["readlink", "-f", java_bin])
122122
java_version_string = get_out(["bash", "-c", "java -version"])
123123
if re.search('^openjdk', java_version_string, re.MULTILINE) is not None:
124-
jdk_dir = os.path.join(java_dir, "..", "..", "..")
124+
pattern = 'openjdk version "([^"]+)"'
125+
match = re.search(pattern, java_version_string, re.MULTILINE)
126+
if match:
127+
version = match.groups()[0]
128+
if version < "1.8":
129+
jdk_dir = os.path.join(java_dir, "..", "..", "..")
130+
else:
131+
jdk_dir = os.path.join(java_dir, "..", "..")
132+
else:
133+
raise RuntimeError("Failed to parse version from %s" %
134+
java_version_string)
125135
elif re.search('^java', java_version_string, re.MULTILINE) is not None:
126136
jdk_dir = os.path.join(java_dir, "..", "..")
127137
else:

0 commit comments

Comments
 (0)