Este es también el error que obtiene si intenta iniciar Eclipse sobre ssh sin reenviar el acceso X. Es decir, olvidaste ejecutar ssh -X [email protected]
u olvidó incluir ForwardX11 yes
en tu ~/.ssh/config
entrada para el servidor.
Estoy agregando esta respuesta para cualquiera que pueda tropezar con esta pregunta en una búsqueda de Google, aunque técnicamente, OP está preguntando sobre un caso de VM.
Además, esto también puede deberse a que la aplicación no tenga la autorización correcta para mostrar al control remoto X server
. Esto suele suceder cuando inicia sesión en la sesión ssh como un usuario y ejecuta un comando como otro usuario para iniciar una aplicación GUI. Por ejemplo, cuando inicia sesión en el servidor remoto y ejecuta un sudo
dominio. Para resolver este problema, deberá obtener la cookie mágica del usuario que inicia sesión e importar la cookie para el usuario que ejecuta el comando.
Como el usuario que inicia sesión en el servidor que tiene autoridad para mostrar a X
, ejecuta:
xauth extract cookie_file $DISPLAY
Luego, como usuario que intenta ejecutar la interfaz gráfica de usuario:xauth
combinar cookie_file
Una vez que la cookie se importa en el .Xauthority
del usuario archivo, debería poder ejecutar la GUI.
Creo que esto es un problema con gtk. Compruebe qué versión está instalada.
dpkg -l libgtk[0-9]* | grep ^i
Si no está instalado o es una versión incorrecta, haga un sudo apt-get install gtk
o haz un sudo apt-get update
.
EDITAR
El problema era que SSH estaba usando SSH para acceder de forma remota a una máquina virtual Linux y no tenía un X-Server configurado en Windows y no tenía habilitado el reenvío X11. Después de arreglar eso, el OP no debería tener ningún problema al ejecutar Eclipse.