bell-sw/Liberica

JDK 22 does not work on macOS 10.15.7

Closed this issue · 1 comments

java -version
openjdk version "22.0.2" 2024-07-16
OpenJDK Runtime Environment (build 22.0.2+11)
OpenJDK 64-Bit Server VM (build 22.0.2+11, mixed mode, sharing)

Trying to run a Swing/JavaFX based application with JDK22 on macOS 10.15 x86 results in the following output:

java -jar MediathekView.jar
Exception in thread "main" java.lang.UnsatisfiedLinkError: /Users/sm/.sdkman/candidates/java/22.0.2.fx-librca/lib/libawt.dylib: dlopen(/Users/sm/.sdkman/candidates/java/22.0.2.fx-librca/lib/libawt.dylib, 1): Library not loaded: /System/Library/Frameworks/JavaRuntimeSupport.framework/Versions/A/JavaRuntimeSupport
  Referenced from: /Users/sm/.sdkman/candidates/java/22.0.2.fx-librca/lib/libawt.dylib
  Reason: image not found
	at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
	at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:331)
	at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:197)
	at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:139)
	at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:259)
	at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:249)
	at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2408)
	at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:916)
	at java.base/java.lang.System.loadLibrary(System.java:2068)
	at java.desktop/sun.awt.PlatformGraphicsInfo.lambda$static$0(PlatformGraphicsInfo.java:38)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:319)
	at java.desktop/sun.awt.PlatformGraphicsInfo.<clinit>(PlatformGraphicsInfo.java:37)
	at java.desktop/java.awt.GraphicsEnvironment.lambda$getHeadlessProperty$0(GraphicsEnvironment.java:148)
	at java.base/java.security.AccessController.doPrivileged(AccessController.java:319)
	at java.desktop/java.awt.GraphicsEnvironment.getHeadlessProperty(GraphicsEnvironment.java:143)
	at java.desktop/java.awt.GraphicsEnvironment.isHeadless(GraphicsEnvironment.java:120)
	at mediathek.Main.main(Main.java:386)

The same jar can be run successfully with JDK 21.0.4 on this machine.

Starting with JDK 22 we do not intend to support MacOS 10.x, unfortunately, it's not supported by Apple any more.