diff --git a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/JavaVersionConstraint.java b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/JavaVersionConstraint.java index 4c21a4aa7..3b2287e6d 100644 --- a/HMCLCore/src/main/java/org/jackhuang/hmcl/game/JavaVersionConstraint.java +++ b/HMCLCore/src/main/java/org/jackhuang/hmcl/game/JavaVersionConstraint.java @@ -120,7 +120,8 @@ public enum JavaVersionConstraint { @Override protected boolean appliesToVersionImpl(VersionNumber gameVersionNumber, @Nullable Version version, @Nullable JavaVersion javaVersion) { - return javaVersion != null && !javaVersion.getArchitecture().isX86(); + return javaVersion != null && !javaVersion.getArchitecture().isX86() + && (OperatingSystem.CURRENT_OS != OperatingSystem.OSX || gameVersionNumber.compareTo(VersionNumber.asVersion("1.19")) < 0); } @Override @@ -240,7 +241,8 @@ public enum JavaVersionConstraint { JavaVersion suggested = null; for (JavaVersion javaVersion : JavaVersion.getJavas()) { // select the latest x86 java that this version accepts. - if (!javaVersion.getArchitecture().isX86()) + if (!javaVersion.getArchitecture().isX86() + && (OperatingSystem.CURRENT_OS != OperatingSystem.OSX || gameVersion.compareTo(VersionNumber.asVersion("1.19")) < 0)) continue; VersionNumber javaVersionNumber = javaVersion.getVersionNumber();