Je rencontre cette erreur lors de l'exécution de mon programme d'installation sur une machine Solaris:
Installing...
-------------
[==================|==================|==================|==================]
[---Invocation of this Java Application has caused an InvocationTargetException. This application will now exit. (LAX)
Stack Trace:
Java.lang.NoClassDefFoundError: Could not initialize class Sun.awt.X11GraphicsEnvironment
at Java.lang.Class.forName0(Native Method)
at Java.lang.Class.forName(Class.Java:186)
at Java.awt.GraphicsEnvironment.createGE(GraphicsEnvironment.Java:102)
at Java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.Java:81)
at Sun.awt.X11FontManager.isHeadless(X11FontManager.Java:487)
at Sun.awt.X11FontManager.getFontPath(X11FontManager.Java:767)
at Sun.font.SunFontManager.getPlatformFontPath(SunFontManager.Java:3288)
at Sun.font.SunFontManager$11.run(SunFontManager.Java:3314)
at Java.security.AccessController.doPrivileged(Native Method)
at Sun.font.SunFontManager.loadFonts(SunFontManager.Java:3310)
at Sun.awt.X11FontManager.loadFonts(X11FontManager.Java:439)
at Sun.font.SunFontManager.findFont2D(SunFontManager.Java:2347)
at Sun.font.SunFontManager.findFont2D(SunFontManager.Java:2285)
at Java.awt.Font.getFont2D(Font.Java:498)
at Java.awt.Font.getFamily(Font.Java:1187)
at Java.awt.Font.getFamily_NoClientCode(Font.Java:1161)
at Java.awt.Font.getFamily(Font.Java:1153)
at ZeroGrs.a(DashoA10*..)
at ZeroGrs.a(DashoA10*..)
at ZeroGrs.a(DashoA10*..)
at ZeroGrs.a(DashoA10*..)
at ZeroGrs.a(DashoA10*..)
at ZeroGrs.a(DashoA10*..)
at com.zerog.ia.installer.actions.InstallUninstaller.a(DashoA10*..)
at com.zerog.ia.installer.actions.InstallUninstaller.d(DashoA10*..)
at com.zerog.ia.installer.actions.InstallUninstaller.installSelf(DashoA10*..)
at com.zerog.ia.installer.InstallablePiece.install(DashoA10*..)
at com.zerog.ia.installer.actions.InstallDirectory.install(DashoA10*..)
at com.zerog.ia.installer.actions.InstallDirectory.install(DashoA10*..)
at com.zerog.ia.installer.InstallablePiece.install(DashoA10*..)
at com.zerog.ia.installer.GhostDirectory.install(DashoA10*..)
at com.zerog.ia.installer.InstallablePiece.install(DashoA10*..)
at com.zerog.ia.installer.Installer.install(DashoA10*..)
at com.zerog.ia.installer.LifeCycleManager.b(DashoA10*..)
at com.zerog.ia.installer.LifeCycleManager.a(DashoA10*..)
at com.zerog.ia.installer.Main.main(DashoA10*..)
at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at Sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.Java:57)
at Sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.Java:43)
at Java.lang.reflect.Method.invoke(Method.Java:601)
at com.zerog.lax.LAX.launch(DashoA10*..)
at com.zerog.lax.LAX.main(DashoA10*..)
J'ai essayé de configurer Java_OPTS
avec -Djava.awt.headless=true
mais cela ne fonctionne pas!
Tout a une autre solution à la question?
Essayez d'exécuter ce code dans le constructeur d'un servlet
System.setProperty("Java.awt.headless", "true");
ou
Utilisez ce paramètre dans le script de démarrage du serveur:
-Djava.awt.headless=true
Voici un exemple de ce problème documenté et expliqué dans POI Apache lorsque vous souhaitez créer une feuille avec des colonnes de taille automatique.
Résolu le problème. C'était mon profil, où j'ai réglé mon AFFICHAGE sur un hôte, qui n'est pas actif. Je l'ai réglé correctement et cela a fonctionné.
$ export DISPLAY=
Ou
$ unset DISPLAY
assurez-vous que vous n'avez pas changé de nom d'hôte et qu'après cela, le problème est survenu si c'est le cas, le problème vient du nom d'hôte.
Usually, the program starts to activate the headless mode, telling the program, now you have to work in Headless mode, don't expect the hardware to help, you have to be self-reliant, relying on the computing power of the system to simulate these features:
System.setProperty("Java.awt.headless","true");
Edit the ${Tomcat_HOME}/bin/catalina.sh or ${Tomcat_HOME}/bin/catalina.bat file:
In all similar code below:
"$_RUNJAVA" $Java_OPTS $CATALINA_OPTS \
-Djava.endorsed.dirs="$Java_ENDORSED_DIRS" -classpath "$CLASSPATH" \
-Djava.security.manager \
-Djava.security.policy=="$CATALINA_BASE"/conf/catalina.policy \
-Dcatalina.base="$CATALINA_BASE" \
-Dcatalina.home="$CATALINA_HOME" \
-Djava.io.tmpdir="$CATALINA_TMPDIR" \
Add a sentence at the end:
-Djava.awt.headless=true \
The revised content is as follows:
Exec "$_RUNJAVA" $Java_OPTS $CATALINA_OPTS \
-Djava.endorsed.dirs="$Java_ENDORSED_DIRS" -classpath "$CLASSPATH" \
-Dcatalina.base="$CATALINA_BASE" \
-Dcatalina.home="$CATALINA_HOME" \
-Djava.io.tmpdir="$CATALINA_TMPDIR" \
-Djava.awt.headless=true \
Directly search for the line -Djava.io.tmpdir="$CATALINA_TMPDIR" and add it under this line:
-Djava.awt.headless=true \
There are a total of seven places, which can be solved after the restart.
J'ai eu le même problème avec mon serveur Linux. Je ne sais pas ce qui s'est passé, le problème a été parfaitement résolu en installant Xorg sur ma machine Linux.
Sudo apt-get install xorg openbox