“Nenhuma variável de exibição X11” – o que isso significa?

Eu estou tentando instalar um aplicativo Java na minha máquina Linux (Slackware).

Recebi o seguinte erro e não o compreendo.

Você poderia me aconselhar como abordar o problema? Obrigado.

Aqui está o que eu recebo: (vejo que alguma variável do X11 DISPLAY precisa ser configurada, mas que valor devo dar a ela e como?)

~$ java -jar gate-5.0-beta1-build3048-installer.jar - ERROR - java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it. java.awt.HeadlessException: No X11 DISPLAY variable was set, but this program performed an operation which requires it. at java.awt.GraphicsEnvironment.checkHeadless(Graphic sEnvironment.java:159) at java.awt.Window.(Window.java:407) at java.awt.Frame.(Frame.java:402) at net.sourceforge.mlf.metouia.borders.MetouiaDotsBuf fer.(MetouiaDotsBuffer.java:105) at net.sourceforge.mlf.metouia.borders.MetouiaDots.(MetouiaDots.java:66) at net.sourceforge.mlf.metouia.borders.MetouiaToolBar Border.(MetouiaToolBarBorder.java:49) at net.sourceforge.mlf.metouia.MetouiaLookAndFeel.ini tComponentDefaults(MetouiaLookAndFeel.java:241) at javax.swing.plaf.basic.BasicLookAndFeel.getDefault s(BasicLookAndFeel.java:130) at javax.swing.plaf.metal.MetalLookAndFeel.getDefault s(MetalLookAndFeel.java:1591) at javax.swing.UIManager.setLookAndFeel(UIManager.jav a:537) at javax.swing.UIManager.setLookAndFeel(UIManager.jav a:581) at com.izforge.izpack.installer.GUIInstaller.loadLook AndFeel(GUIInstaller.java:373) at com.izforge.izpack.installer.GUIInstaller.(G UIInstaller.java:116) at sun.reflect.NativeConstructorAccessorImpl.newInsta nce0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInsta nce(NativeConstructorAccessorImpl.java:39) at sun.reflect.DelegatingConstructorAccessorImpl.newI nstance(DelegatingConstructorAccessorImpl.java:27) at java.lang.reflect.Constructor.newInstance(Construc tor.java:513) at java.lang.Class.newInstance0(Class.java:355) at java.lang.Class.newInstance(Class.java:30 at com.izforge.izpack.installer.Installer.main(Instal ler.java:62) 

    Se você está na canvas principal, então

     export DISPLAY=:0.0 

    ou se você estiver usando csh ou tcsh

     setenv DISPLAY :0.0 

    antes de executar seu aplicativo.

    Na verdade, estou surpreso que não seja definido automaticamente. Você está tentando iniciar este aplicativo a partir de um terminal não gráfico? Caso contrário, você modificou o padrão .profile, .login, .bashrc ou .cshrc?

    Note que configurar o DISPLAY para: 0.0 pressupõe que você está sentado na canvas principal, como eu disse, ou pelo menos que a canvas principal está conectada ao seu ID de usuário. Se não estiver conectado, ou se for um ID do usuário diferente, isso falhará.

    Se você estiver vindo de outra máquina, e estiver na canvas principal da máquina e estiver executando o X, você poderá usar “ssh -X hostname” para conectar-se a esse host, e o ssh encaminhará a exibição do X de volta . O ssh também se certificará de que a variável de ambiente DISPLAY está configurada corretamente (desde que não esteja sendo confundida nos vários arquivos de ponto que mencionei acima). Em uma session “ssh -X”, a variável de ambiente DISPLAY terá um valor como “localhost: 11.0”, que apontará para o soquete que o ssh está tunelando para sua checkbox local.

    Você está executando isso de dentro de um ambiente X11? Você pode usar uma janela de terminal, mas ela deve estar dentro de X (após um login gráfico ou executando startx).

    Se você já estiver em um ambiente gráfico, tente exportar DISPLAY =: 0 para bash como shells (bash, sh, etc) ou setenv DISPLAY: 0 para shells baseados em shell C (csh, tcsh, etc)

    Se você se conectou de outra máquina via SSH, use a opção -X para exibir a interface gráfica na máquina em que está sentado (desde que haja um servidor X em execução lá (como xming for windows e seu Linux X padrão). servidor).

    você deve habilitar o encaminhamento do X11 em sua conta

    para fazer isso abra PuTTy, vá para Connection => SSH => Tunnels e marque a opção Enable X11 forwarding

    Também sudo ao servidor e exportar a variável abaixo aqui IP é o IP da sua máquina local

     export DISPLAY=10.75.75.75:0.0 

    insira a descrição da imagem aqui

    Mais uma coisa que pode ser o problema em um caso semelhante ao descrito – X não é encaminhado e $ DISPLAY não é definido quando o programa ‘xauth’ não está instalado no lado remoto. Você pode ver que ele procura quando você executa “ssh -Xv ip_address” e, se não for encontrado, falha, o que não é visto a menos que você ative o modo detalhado (um IMO com falha). Geralmente você pode encontrar ‘xauth’ em um pacote com o mesmo nome.

    Muito fácil, tinha esse mesmo problema, então o que eu fiz foi para baixar e instalar um aplicativo que ajudaria na exibição, em seguida, corrigiu o erro.

    Baixe este aplicativo xming:

    http://sourceforge.net/project/downloading.php ?

    Instale e use as configurações neste link:

    http://www.geo.mtu.edu/geoschem/docs/putty_install.html ou siga estes passos:

    Instalando / Configurando o PuTTy e o Xming

    Uma vez que PuTTy e Xming tenham sido baixados para o PC, instale de acordo com suas respectivas instruções.

    Configurando o Xming

    Uma vez instalado o Xming, execute o aplicativo chamado ‘XLaunch’ e verifique se as configurações são as mostradas:

    • selecione Entradas padrão nas janelas Configurações de exibição, clique em próximo
    • clique em próximo na janela Tipo de session.
    • clique em Avançar na janela parameters adicionais (a checkbox de seleção Visualizar prancheta é verdadeira)
    • salve a configuração e clique para finalizar.

    Configurando o PuTTy

    Depois de instalar o PuTTy, clique duas vezes no ícone do PuTTy na área de trabalho e configure como mostrado:

    Isso mostra a criação de um perfil de login, em seguida, salvá-lo.

    • Em ssh -> X11, clique na checkbox de seleção para ativar o encaminhamento do X11.
    • na checkbox de texto do local de exibição X, digite localhost: 0.0

    salvar perfil, em seguida, conectar-se remotamente ao servidor para testar.

    Felicidades!!!

    Eu tive o mesmo problema no Ubuntu 14.04.01 quando tentei instalar o JDK 8 e o Netbeans se eu iniciei o script dentro de um terminal Byobu (talvez com o mesmo acontece com o Screens).

    Apenas saia do Byobu e (em um terminal gráfico) execute o script.

    Verificação inicial

    1) Quando você estiver exportando o DISPLAY para outra máquina, certifique-se de ter typescript o comando xhost + naquela máquina. Este comando permite que outra máquina exporte seu DISPLAY nesta máquina. Pode haver restrições de segurança, apenas saiba disso. Precisa verificar ssh -X MachineIP não exigirá xhost + ?

    2) Algumas vezes, o JCONSOLE não mostra todo o seu processo, já que esse processo da JVM pode ser executado com um usuário diferente e você está exportando o DISPLAY com outro usuário. então é melhor seguir CD_DIR>sudo ./jconsole

    3) em WAS (WEBSPHERE); O jconsole não será capaz de conectar seu processo de servidor java, então vá até o link e tente conectá-lo. Isso funcionou para mim. Pode ser que esta página esteja inicializando algumas variables ​​para permitir que o jconsole se conecte a esse servidor.

    Console do WAS> Servidores de aplicativos> server1> Definição de processo> Java Virtual Machine


    Eu enfrentei o mesmo problema com a máquina AIX (onde a interface de linha de comandos só está disponível, Não há IU do DISPLAY). Resolvi instalando

    Cliente NX para Windows

    Passo 1: Através dessa máquina Windows, eu conectei com a checkbox unix onde o console da GUI está disponível.
    Etapa 2: SSH para a checkbox AIX dessa checkbox UNIX.
    Etapa 3: defina DISPLAY como “export DISPLAY = UNIXMACHINE: NXClientPORTConnectedMentionedOnTitle”
    Passo 4: Agora, se lançarmos qualquer programa que exija DISPLAY; será lançado nesta checkbox UNIX.

    VNC

    Se você instalou o VNC na checkbox UNIX, onde a exibição está disponível; então o Windows e o NX Client não são necessários. Etapa 1: use o VNC para conectar-se à checkbox Unix onde o console da GUI está disponível.
    Etapa 2: SSH para a checkbox AIX dessa checkbox UNIX.
    Etapa 3: defina DISPLAY como “export DISPLAY = UNIXMACHINE: VNCPORT”
    Passo 4: Agora, se lançarmos qualquer programa que exija DISPLAY; será lançado nesta checkbox UNIX.

    OUTRO

    Etapa 1: SSH para a checkbox AIX dessa checkbox UNIX.
    Etapa 2: defina DISPLAY como “export DISPLAY = UNIXMACHINE: VNCPORT”
    Passo 3: Agora, se lançarmos qualquer programa que exija DISPLAY; será lançado nesta checkbox UNIX.

    Para aqueles que estão tentando fazer com que um aplicativo do X Window trabalhe a partir do Windows a partir do Linux:

    O que funcionou para mim foi configurar o servidor xming na minha máquina windows, configurar o X11 forwarding option no putty quando conecto ao host linux e colocar no meu endereço IP do windows com a porta de display e depois a variável display com o meu endereço IP do windows: 0.0

    Não se esqueça de adicionar o endereço IP dos hosts Linux ao arquivo X0.hosts para garantir que o servidor xming aceite tráfego desse host. Demorei um pouco para descobrir isso.

    Não se esqueça de executar “host +” na sua máquina de exibição “home”, e quando você estiver ssh na máquina que você está fazendo “ssh -x hostname”