Toto je také chyba, kterou dostanete, když se pokusíte spustit Eclipse přes ssh bez přesměrování přístupu X. Zapomněli jste spustit ssh -X [email protected] nebo jste zapomněli uvést ForwardX11 yes ve vašem ~/.ssh/config záznam pro server.
Přidávám tuto odpověď pro každého, kdo může narazit na tuto otázku z vyhledávání Google, i když technicky vzato se OP ptá na případ VM.
Kromě toho to může být také způsobeno tím, že aplikace nemá správné oprávnění k zobrazení vzdálenému X server . K tomu obvykle dochází, když se přihlásíte do relace ssh jako jeden uživatel a jako jiný uživatel spustíte příkaz ke spuštění aplikace GUI. Například když se přihlásíte ke vzdálenému serveru a spustíte sudo příkaz. Chcete-li tento problém vyřešit, budete muset získat magický soubor cookie uživatele, který se přihlašuje, a importovat soubor cookie pro uživatele spouštějícího příkaz.
Jako uživatel přihlašující se na server, který má oprávnění zobrazovat X , spustit:
xauth extract cookie_file $DISPLAY
Poté jako uživatel, který se pokouší spustit gui:xauth sloučit cookie_file
Jakmile je soubor cookie importován do uživatelského souboru .Xauthority souboru, měli byste být schopni spustit GUI.
Myslím, že to je problém s gtk. Zkontrolujte, jaká verze je nainstalována.
dpkg -l libgtk[0-9]* | grep ^i
Pokud není nainstalován nebo jde o nesprávnou verzi, proveďte sudo apt-get install gtk nebo proveďte sudo apt-get update .
UPRAVIT
Problém byl v tom, že SSH používal SSH pro vzdálené připojení k virtuálnímu počítači s Linuxem a neměl X-Server nastavený ve Windows a neměl povoleno předávání X11. Po narovnání by OP neměl mít žádné problémy se spuštěním Eclipse.