PRB: JET Control Panel and JetPackII fail to start if assistive technologies are enabled in the active JRE
Article ID: 000009
Last Revised On: 21-Sep-2005
PDF Version: 000009.pdf
The information in this article applies to:
- Excelsior JET 3.7 and below (all editions)
This article does not apply to Excelsior JET 4.0 and above.
JET Control Panel and JetPackII terminate shortly after startup without displaying any error messages.
Both JET Control Panel and JetPackII are written in Java and compiled by JET Setup. As they are Swing applications, they will use the active JRE. Now, if you or some third-party software enable assistive technologies in that JRE, a Java application running on it will try to load some accessibility-related classes that are not part of the JRE. JET Setup is not aware of such classes and therefore may not precompile them.
As a result, JET Control Panel and JetPackII will terminate early on startup due to NoClassDefFoundError being thrown. The error message will be pirnted on standard output, but you will not see it because those executables have console suppressed.
Remove the file lib/accessibility.properties
from the active JRE or select another JRE in JET Setup.
To confirm the cause of the problem, enable console in the JET Control Panel or JetPackII executable using the gui
gui - LaunchPad31526.exe
Now, if you run the executable the following message will be displayed:
Exception in thread "main" java.lang.NoClassDefFoundError:
defineClass failed: JIT is disabled
This problem may not be fixed, because it is not possible to statically determine classes of the installed assistive technologies that have to be precompiled by JET Setup. The above workaround will have to be used.