2009-04-25

Qualnet on more then one X Screen - java.lang.ArrayIndexOutOfBoundsException

Edit:  Damn, apparently switching to java 1.6 brings its' own host of problems with it. Have to stick to java 1.5 for the moment. 

--------------

So google totally failed me when I got this error, so here's how I fixed it. 

I have two monitors, each running an X screen on the same X server (:0.0 and :0.1)

The Qualnet IDE was starting fine from the first screen (:0.0), but when trying to run it on the second (:0.1), I was getting : 


Using /home/broadhej/.qualnetUserDir as user directory...
-- System Info ----------------------------------------------------------------
  Product Version = QualNet 4.5 (Build 200803141608)
  IDE Versioning = IDE/1 spec=1.43.3 impl=200803141608
  Operating System = Linux version 2.6.28-gentoo-r1 running on i386
  Java; VM; Vendor = 1.5.0_18; Java HotSpot(TM) Server VM 1.5.0_18-b02; Sun Microsystems Inc.
  Java Home = /opt/sun-jdk-1.5.0.18/jre
  System Locale; Encod. = en_IE; UTF-8
  Home Dir; Current Dir = /home/broadhej; /main/linprogs/qualnet/4.5/gui/netbeans/bin
  IDE Install; User Dir = /main/linprogs/qualnet/4.5/gui/netbeans; /home/broadhej/.qualnetUserDir/4.5
  CLASSPATH = /main/linprogs/qualnet/4.5/gui/netbeans/lib/patches/openide-compat.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/core.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/openide.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/crimson.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/derby.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/derbytools.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/flexlm.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/jh.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/regexp.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/skinlf.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/terminalemulator.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/xerces.jar:/main/linprogs/qualnet/4.5/gui/netbeans/lib/ext/xmlparsers.jar:/etc/java-config-2/current-system-vm/lib/dt.jar:/etc/java-config-2/current-system-vm/lib/htmlconverter.jar:/etc/java-config-2/current-system-vm/lib/jconsole.jar:/etc/java-config-2/current-system-vm/lib/sa-jdi.jar:/etc/java-config-2/current-system-vm/lib/tools.jar
-------------------------------------------------------------------------------
java.lang.ArrayIndexOutOfBoundsException: 1
  at sun.awt.X11GraphicsEnvironment.getDefaultScreenDevice(X11GraphicsEnvironment.java:178)
  at java.awt.Window.init(Window.java:271)
  at java.awt.Window.(Window.java:319)
  at java.awt.Frame.(Frame.java:419)
  at java.awt.Frame.(Frame.java:384)
  at org.netbeans.core.Splash$SplashWindow.(Unknown Source)
  at org.netbeans.core.Splash.createW(Unknown Source)
  at org.netbeans.core.Splash.showSplash(Unknown Source)
  at org.netbeans.core.Main.main(Unknown Source)
  at org.netbeans.core.TopThreadGroup.run(Unknown Source)
  at java.lang.Thread.run(Thread.java:595)
/main/linprogs/qualnet/4.5/bin

The fix? Get Qualnet to use a newer jvm. For me, that was:

JDK_HOME=/opt/sun-jdk-16.0.13/ qualnet_ide

Incidentally, it's ridiculous that they don't ship qualnet with a directory-aware executable; here's my script for starting it up;

 cd /main/linprogs/qualnet/4.5/gui/netbeans/bin

 ./runide.sh $*

 cd -

Problem solved! 


No comments:

Post a Comment