Заполучил на работе второй монитор. Настроено все так, что у меня два независимых десктопа - каждый со своей панелью задач, набором виртуальных десктопов и.т.п. Тоесть никаких 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?