J’ai un script utilisant java pour me connecter à afficher X11 dans le port 10.0 à localhost
mais je reçois toujours cette erreur
java.lang.InternalError: Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable. at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method) at sun.awt.X11GraphicsEnvironment.access$200(X11GraphicsEnvironment.java:62) at sun.awt.X11GraphicsEnvironment$1.run(X11GraphicsEnvironment.java:178) at java.security.AccessController.doPrivileged(Native Method) at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:142) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:186) at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:82) at sun.awt.X11.XToolkit.(XToolkit.java:112) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:186) at java.awt.Toolkit$2.run(Toolkit.java:849) at java.security.AccessController.doPrivileged(Native Method) at java.awt.Toolkit.getDefaultToolkit(Toolkit.java:841) at ij.io.Opener.openJpegOrGif(Opener.java:367) at ij.io.Opener.openImage(Opener.java:220) at ij.io.Opener.openImage(Opener.java:249) at ij.io.Opener.open(Opener.java:116) at ij.IJ.open(IJ.java:1112) at ij.macro.Functions.open(Functions.java:2006) at ij.macro.Functions.doFunction(Functions.java:129) at ij.macro.Interpreter.doStatement(Interpreter.java:205) at ij.macro.Interpreter.doBlock(Interpreter.java:515) at ij.macro.Interpreter.runUserFunction(Interpreter.java:278) at ij.macro.Interpreter.getFactor(Interpreter.java:1200) at ij.macro.Interpreter.getTerm(Interpreter.java:1162) at ij.macro.Interpreter.getExpression(Interpreter.java:1145) at ij.macro.Interpreter.getBooleanExpression(Interpreter.java:881) at ij.macro.Interpreter.getLogicalExpression(Interpreter.java:857) at ij.macro.Interpreter.getBoolean(Interpreter.java:850) at ij.macro.Interpreter.doIf(Interpreter.java:829) at ij.macro.Interpreter.doStatement(Interpreter.java:217) at ij.macro.Interpreter.doBlock(Interpreter.java:515) at ij.macro.Interpreter.doStatement(Interpreter.java:241) at ij.macro.Interpreter.doIf(Interpreter.java:831) at ij.macro.Interpreter.doStatement(Interpreter.java:217) at ij.macro.Interpreter.doStatements(Interpreter.java:195) at ij.macro.Interpreter.run(Interpreter.java:99) at ij.macro.Interpreter.run(Interpreter.java:65) at ij.macro.Interpreter.run(Interpreter.java:75) at ij.plugin.Macro_Runner.runMacro(Macro_Runner.java:127) at ij.plugin.Macro_Runner.runMacroFile(Macro_Runner.java:112) at ij.IJ.runMacroFile(IJ.java:103) at ij.ImageJ.main(ImageJ.java:517)
J’ai tout essayé pour résoudre ce problème comme:
export DISPLAY=:10.0 export DISPLAY=localhost:10.0
J’ai aussi essayé le port 0.0 mais je reçois toujours la même erreur
après avoir essayé xhost
xhost +local:all xhost: unable to open display "" xhost: unable to open display ":10.0"
comment puis-je résoudre ce problème, je pensais que le serveur X ne fonctionne pas, donc j’ai essayé startx
sa dit son exécution sur ce port
mon système est Ubuntu server edition 10.04
Cette commande m’a aidé à résoudre le problème:
export DISPLAY=:0
Vous devez spécifier le paramètre -Djava.awt.headless=true
au démarrage.
Supprimer la variable DISPLAY
unset DISPLAY
Cela aide dans la plupart des cas (par exemple, le démarrage de serveurs d’applications ou d’autres outils basés sur Java) et évite de modifier toutes ces lignes de commande.
Il peut également être pratique de l’append au fichier .bash_profile pour un utilisateur dédié serveur d’applications / outils.
Je pense que vous travaillez en mode sudo.Veuillez vérifier le mode utilisateur et réessayer
Si quelqu’un essaye d’exécuter les tests unitaires automatisés via le plugin maven-surefire sur CI (jenkins, ..), et d’obtenir l’erreur mentionnée ci-dessus, veillez à mettre à jour la configuration de votre plugin surefire:
org.apache.maven.plugins maven-surefire-plugin ${maven-surefire-plugin.version} true
Cela va le réparer:
/usr/bin/java -Djava.awt.headless=true $Your_program
Pour moi, la connexion en tant que -Y au lieu de -X a fonctionné.
Si vous avez un X11 non fiable comme indiqué ci-dessous, alors essayez -Y flag au lieu de cela (si vous faites confiance à l’hôte):
Avertissement : la configuration du transfert X11 non fiable a échoué: données de clé xauth non générées
Après plusieurs jours d’efforts futiles d’installation de fishfish sur framboise pi 2 avec fedora 22 sans tête, Ci-dessous travaillé pour moi sans accroc
unset DISPLAY java -Djava.awt.headless=true -jar glassfissh-installer-v2ur2-b04-linux.jar
eu mon aide d’ ici
Tout d’abord: lancez XQuartz
Deuxièmement: ssh -X utilisateur @ ip_address
…: lancez votre processus
si vous ssh puis démarrez XQuartz, vous obtiendrez cette erreur
Dans mon cas, il n’y avait plus de place dans ma machine et j’ai été confronté au même problème. Parfois, cela pourrait être la question de l’espace. Vérifiez l’espace dans votre environnement Linux / Unix et assurez-vous que votre ordinateur dispose de suffisamment d’espace.
J’utilisais Xming et j’ai eu une erreur similaire. Les mesures suivantes ont été sockets pour résoudre le problème:
DISPLAY=XXX.XXX.XXX.XX:0.0; export DISPLAY
DISPLAY=XXX.XXX.XXX.XX:0.0; export DISPLAY
Remplacez XXX.XXX.XXX.XX
par votre adresse IP.
le seul moyen de le faire fonctionner était de lancer le script avec un modèle. Par exemple sudo ./glassfish-3.1.2.2-unix.sh -s template
Cela installe Glassfish en mode silencieux. http://docs.oracle.com/cd/E18930_01/html/821-2427/ghmva.html
Je rencontre la même erreur avec vous lorsque je lance la commande jconsole à distance. Je veux modifier un paramètre à jconsole qui s’exécute sur un hôte Linux distant, je peux me connecter à l’hôte à l’aide de secureCRT, le terminal jette ces informations d’erreur. Heureusement, quand on utilise le mastic, ça va. Bizarre….
Si vous voyez cette erreur dans Hudson, essayez de supprimer le répertoire .java de votre répertoire personnel, cela peut fonctionner pour vous.
Si vous lancez l’application sur un serveur distant alors que vous êtes connecté par ssh, une autre méthode consiste à démarrer ssh avec le paramètre -x
ou d’append ForwardX11 no
à ForwardX11 no
dans votre /etc/ssh/ssh_config
. Dans ce cas, ssh ne créera pas de variable d’environnement DISPLAY.
Michael-O a donné une approche utile pour résoudre le problème. Une autre façon de résoudre ce problème est de démarrer le serveur avec Putty Console.
Si vous déclenchez votre code à partir de Jenkins, activer l’option “Démarrer Xvfb avant la construction et l’arrêter après” peut aider. Ça m’a aidé.
changez pour un autre utilisateur et essayez sauf root. ça marche pour moi.
Je ne me suis tout simplement pas déconnecté de root avant de lancer ./studio.sh.
Pour Ubuntu 17.10 Installer le tampon de trame virtuelle X (xvfb)
apt install xvfb
Et ajouté ces lignes au fichier / etc / profile …
# Start the X virtual frame buffer (Xvfb) if [ -f /usr/X11R6/bin/Xvfb ]; then /usr/X11R6/bin/Xvfb :1 -screen 0 1366x768x32 fi # Set the DISPLAY variable for the X virtual frame buffer (Xvfb) export DISPLAY=localhost:1.0
Pour moi, le problème était que xorg-x11-xauth n’était pas installé. Je l’ai installé et ensuite cela a fonctionné.
Les paquets que j’ai maintenant sont: