Заполучил на работе второй монитор. Настроено все так, что у меня два независимых десктопа - каждый со своей панелью задач, набором виртуальных десктопов и.т.п. Тоесть никаких xinerama или twin view. Правда при такой конфигурации нельзя перетаскивать окна с одного монитора на другой если это не предусмотрено самими программами (например GIMP умеет такое). Точнее будет сказать не монитора, а screen в Xorg. Он окна перекидывать почему-то не умеет.
Я в общем готов смирится с тем, что окна нельзя перетаскивать. Но вот одна проблема: java-приложения (в частности IM клиент Spark) запускаются только на первом мониторе. На втором не запускаются. Как и от любых java приложений добится от него вменяемых сообщений об ошибках невозможно (не говоря о том, какая этот спарк какашка вобщем). Вот все что есть у него в логах:
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.jivesoftware.launcher.Startup.start(Startup.java:83)
at org.jivesoftware.launcher.Startup.main(Startup.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.exe4j.runtime.LauncherEngine.launch(Unknown Source)
at com.install4j.runtime.Launcher.main(Unknown Source)
Caused by: java.lang.ExceptionInInitializerError
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at java.awt.Toolkit$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Toolkit.getDefaultToolkit(Unknown Source)
at com.jgoodies.looks.LookUtils.isLowResolution(LookUtils.java:472)
at com.jgoodies.looks.LookUtils.<clinit>(LookUtils.java:201)
at com.jgoodies.looks.plastic.PlasticLookAndFeel.<clinit>(PlasticLookAndFeel.java: 122)
at org.jivesoftware.Spark.startup(Spark.java:135)
... 12 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
at sun.awt.X11GraphicsEnvironment.getDefaultScreenDevice(Unknown Source)
at sun.awt.X11.XToolkit.<clinit>(Unknown Source)
... 21 more
Погуглив я находил подобные проблемы у людей с другими java-приложениями, но им или не отвечали или обсуждение шло на программерских форумах и обсуждение уходило за грани понятного для меня.
В связи с этим есть ряд вопросов.
Встречался ли кто-нибудь с такой проблемой или знает как жабу победить?
Есть ли способ держать независимые десктопы не используя два разных x-screens?
Или может есть способ держать на разных мониторах два виртуальных десктопа, так же, без двух рахных x-screeens?