'java.lang.UnsatisfiedLinkError: /opt/jdk17/lib/libawt_xawt.so: libXrender.so.1: cannot open shared object file: No such file or directory
I don't understand what went wrong with me. I'm trying to run Spigot Server Core 1.18.2, and I'm constantly having problems with this library.
[19:21:50 INFO]: [STDERR]: java.lang.UnsatisfiedLinkError: /opt/jdk17/lib/libawt_xawt.so: libXrender.so.1: cannot open shared object file: No such file or directory [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.load(Native Method) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174) [19:21:50 INFO]: [STDERR]: at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2389) [19:21:50 INFO]: [STDERR]: at java.base/java.lang.Runtime.load0(Runtime.java:755) [19:21:50 INFO]: [STDERR]: at java.base/java.lang.System.load(System.java:1953) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.load(Native Method) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:315) [19:21:50 INFO]: [STDERR]: at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:285) [19:21:50 INFO]: [STDERR]: at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2398) [19:21:50 INFO]: [STDERR]: at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818) [19:21:50 INFO]: [STDERR]: at java.base/java.lang.System.loadLibrary(System.java:1989) [19:21:50 INFO]: [STDERR]: at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1388) [19:21:50 INFO]: [STDERR]: at java.desktop/java.awt.Toolkit$2.run(Toolkit.java:1386) [19:21:50 INFO]: [STDERR]: at java.base/java.security.AccessController.doPrivileged(AccessController.java:318) [19:21:50 INFO]: [STDERR]: at java.desktop/java.awt.Toolkit.loadLibraries(Toolkit.java:1385) [19:21:50 INFO]: [STDERR]: at java.desktop/java.awt.Toolkit.initStatic(Toolkit.java:1423) [19:21:50 INFO]: [STDERR]: at java.desktop/java.awt.Toolkit.(Toolkit.java:1397) [19:21:50 INFO]: [STDERR]: at java.desktop/java.awt.Component.(Component.java:624)
Solution 1:[1]
This problem seems to stem from Java attempting to load GUI-related classes in non-gui environment, like headless server. Perhaps adding
-Djava.awt.headless=true to java command would help, if the application supports that, and does not in fact require to run in Desktop environment.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | JockX |
