libawt_xawt.so: libXext.so.6: não é possível abrir o arquivo de objeto compartilhado: Esse arquivo ou diretório não existe

13
Exceção no encadeamento "main" java.lang.UnsatisfiedLinkError: /usr/lib/java/jdk1.8.0_60/jre/lib/i386/libawt_xawt.so: libXext.so.6: não é possível abrir o arquivo de objeto compartilhado: nenhum arquivo ou diretório
    em java.lang.ClassLoader $ NativeLibrary.load (método nativo)
    em java.lang.ClassLoader.loadLibrary0 (ClassLoader.java:1938)
    em java.lang.ClassLoader.loadLibrary (ClassLoader.java:1821)
    em java.lang.Runtime.load0 (Runtime.java:809)
    em java.lang.System.load (System.java:1086)
    em java.lang.ClassLoader $ NativeLibrary.load (método nativo)
    em java.lang.ClassLoader.loadLibrary0 (ClassLoader.java:1938)
    em java.lang.ClassLoader.loadLibrary (ClassLoader.java:1842)
    em java.lang.Runtime.loadLibrary0 (Runtime.java:870)
    em java.lang.System.loadLibrary (System.java:1122)
    O java.awt.Toolkit $ 3.run (Toolkit.java:1636)
    O java.awt.Toolkit $ 3.run (Toolkit.java:1634)
    em java.security.AccessController.doPrivileged (método nativo)
    em java.awt.Toolkit.loadLibraries (Toolkit.java:1633)
    em java.awt.Toolkit. (Toolkit.java:1668)
    em java.awt.Component. (Component.java:593)
    no EventTest. (EventTest.java:28)
    em EventTest.main (EventTest.java:49)
Ankit_Chaudhary
fonte

Respostas:

12

Verifique qual pacote contém o arquivo e instale-o:

$ apt-file search libXext.so.6 
libxext6: /usr/lib/x86_64-linux-gnu/libXext.so.6 
libxext6: /usr/lib/x86_64-linux-gnu/libXext.so.6.4.0
libxext6-dbg: /usr/lib/debug/usr/lib/x86_64-linux-gnu/libXext.so.6.4.0 

Então instale libxext6:

sudo apt install libxext6
JdeHaan
fonte
sir este método não está funcionando
Ankit_Chaudhary
Que parte? O arquivo apt ou apt install?
JdeHaan
sir i significa erro acima mencionado não é corrigir por este método
Ankit_Chaudhary
Então, o arquivo está realmente lá? sudo find / -name 'libXext *'
JdeHaan 17/15
1
Poderia muito bem ser um conflito de versão em 32 bits vs. 64 bits. Verifique esta pergunta no stackoverflow: stackoverflow.com/questions/24543014/…
#
10
apt-get install libxrender1:i386 libxtst6:i386 libxi6:i386

me ajudou a resolver isso.

Eu instalei em um sistema de 64 bits também i386.

user613150
fonte
3
Isso funcionou para mim, onde as outras respostas não. Obrigado.
codificador
Certamente, essa é a resposta correta se você estiver executando a versão i386 do JRE ou qualquer outro software que dependa desse conjunto de bibliotecas. Você sempre deve corresponder a arquitetura entre as bibliotecas de tempo de execução e compartilhadas.
Stamster
9

Eu tive que instalar isso (no ubuntu 16.04 64 bits) para fazer o oracle-jdk8 funcionar:

sudo apt-get install libxrender1 libxtst6 libxi6
TmTron
fonte
Eu não sei o que, mas isso resolveu meus problemas depois de tentar centenas de outros apt instalar quaisquer comandos de outras respostas!
precisa