Hi again,

I finally got to the point of trying to manually install Oracle's JDK and that made absolutely no difference. I had to dig into the source code of both DocAnalyzer and UIManager to understand that the getSystemLookAndFeelClassName, called by the DocAnalyzer, is explicitly checking for GNOME desktop being in use. On a non-GNOME desktop, even if GTK is available, the method falls back on unusable Metal, not even Nimbus. That is very restrictive, as GNOME3 is now unusable because of the damned hot corner that always kicks me out of what I am doing and cannot be disabled without relying on outdated distribution and version specific Java-script-patching procedures on some forums, so I am using XFCE.

Fortunately, I found a workaround: pass -Dswing.systemlaf=com.sun.java.swing.plaf.gtk.GTKLookAndFeel in the JVM arguments. That overrides the bad guess of the JVM and fallback to Metal. Note that the usual property name would be swing.defaultlaf, but I had to use swing.systemlaf because of the DocAnalyzer activating the system look and feel (this would have normally worked, though).

If I could find a way to have this passed all the times, without having to change the launch configuration of each UIMA tool, I would be happier, but this is already a very good step forward. At least I am not blocked anymore by this, and can continue exploring under Linux.

Hope this can help others.

Reply via email to