• Bugs
  • Java exceptions after loading

Hi everybody,

I downloaded the Spine launcher (full edition) for Linux (64bit) and got an exception after loading the downloaded files.

1) I started the launcher
2) Entered activation code
3) Spine is downloading files
4) Spine is loading files

And after this it crashes. It re-downloads all the files when I execute the launcher again. I attached the logs. I'm running Gentoo (stable)

And here the exceptions to make it easier for people with the same problem to find this thread 😉

After calling the launcher

java.lang.NoSuchMethodException: java.util.prefs.FileSystemPreferences.WindowsRegOpenKey(int, [B, int)
        at java.lang.Class.getDeclaredMethod(Class.java:1954)
        at a.E.<clinit>(SourceFile:37)
        at java.lang.Class.forName0(Native Method)

After loading

java.lang.reflect.InvocationTargetException
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
Related Discussions
...

The error is:

Caused by: java.lang.ArrayIndexOutOfBoundsException: 0
   at org.lwjgl.opengl.LinuxDisplay.getAvailableDisplayModes(SourceFile:954)
   at org.lwjgl.opengl.LinuxDisplay.init(SourceFile:738)
   at org.lwjgl.opengl.Display.<clinit>(SourceFile:138)

This is in LWJGL, which is open source. The failing line of code is here:
https://github.com/LWJGL/lwjgl/blob/lwjgl2.9.2/src/java/org/lwjgl/opengl/LinuxDisplay.java#L954
So, it appears that XRandR is not supported on your system. Can you try running "xrandr" from the command line? If you don't have it, you'll need to install libxrandr. Here's the issue I filed with LWJGL:
http://forum.lwjgl.org/index.php?topic=5742.0
We are waiting for them to catch the error and provide a better error message. Until then, I've improved the error on my side when the display fails to initialize.

Works wonderful with XRandR. Thank you Nate!