From e0764d6f0ca66fae9b9922d487693c40b9a57212 Mon Sep 17 00:00:00 2001 From: Liyan Zhao Date: Tue, 14 May 2024 00:15:07 +0800 Subject: [PATCH] support java from homebrew (#3035) * fix: support java from homebrew * fix: support java from homebrew * fix: add ~/Library/Java/JavaVirtualMachine --- .../java/org/jackhuang/hmcl/util/platform/JavaVersion.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java index 9097960ed..633942e3c 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/util/platform/JavaVersion.java @@ -335,11 +335,18 @@ public final class JavaVersion { javaExecutables.add(listDirectory(Paths.get("/Library/Java/JavaVirtualMachines")) .flatMap(dir -> Stream.of(dir.resolve("Contents/Home"), dir.resolve("Contents/Home/jre"))) .map(JavaVersion::getExecutable)); + javaExecutables.add(listDirectory(Paths.get(System.getProperty("user.home"), "Library/Java/JavaVirtualMachines")) + .flatMap(dir -> Stream.of(dir.resolve("Contents/Home"), dir.resolve("Contents/Home/jre"))) + .map(JavaVersion::getExecutable)); javaExecutables.add(listDirectory(Paths.get("/System/Library/Java/JavaVirtualMachines")) .map(dir -> dir.resolve("Contents/Home")) .map(JavaVersion::getExecutable)); javaExecutables.add(Stream.of(Paths.get("/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java"))); javaExecutables.add(Stream.of(Paths.get("/Applications/Xcode.app/Contents/Applications/Application Loader.app/Contents/MacOS/itms/java/bin/java"))); + // Homebrew + javaExecutables.add(Stream.of(Paths.get("/opt/homebrew/opt/java/bin/java"))); + javaExecutables.add(listDirectory(Paths.get("/opt/homebrew/Cellar/openjdk")) + .map(JavaVersion::getExecutable)); break; default: