I ran into a problem where Spine would fail to start every time with the following error (edited for brevity):
Spine Launcher 3.4.01
Linux amd64 4.6.0-1-amd64
Java 1.7.0_80 Esoteric Software
64-bit Server VM
Downloading: Spine 3.4.02
Update complete.
Spine 3.4.02 Professional, LWJGL
Licensed to:
Error starting Spine.
An unexpected error has occurred:
java.lang.reflect.InvocationTargetException
...
Caused by: java.lang.reflect.InvocationTargetException
...
Caused by: java.lang.RuntimeException: Error initializing the OpenGL display. Please note libxrandr is required.
...
Caused by: java.lang.ExceptionInInitializerError
...
Caused by: java.lang.RuntimeException: org.lwjgl.LWJGLException: No modes available
at org.lwjgl.opengl.Display.<clinit>(SourceFile:141)
... 28 more
Caused by: org.lwjgl.LWJGLException: No modes available
at org.lwjgl.opengl.LinuxDisplay.init(SourceFile:740)
at org.lwjgl.opengl.Display.<clinit>(SourceFile:138)
... 28 more
I narrowed this down to having a powered-off TV plugged into a DisplayPort connector. If I unplug the TV, Spine works again.
I think this is because LWJGL doesn't like having a monitor without valid modes and fails to parse this output from "xrandr -q":
xrandr: Output DP-3 is not disconnected but has no modes
Screen 0: minimum 8 x 8, current 2560 x 1440, maximum 32767 x 32767
DVI-D-0 connected primary 2560x1440+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
2560x1440 59.95*+
HDMI-0 connected (normal left inverted right x axis y axis)
2560x1440 59.95 +
DP-0 disconnected (normal left inverted right x axis y axis)
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 connected (normal left inverted right x axis y axis)
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 disconnected (normal left inverted right x axis y axis)