Я имел пустые Java окна в VNC тоже, но с Java 7 и Java 8, так не удивительно, что отключение xrender
не помогло мне. Вероятно, это является грубым нарушением протокола StackOverflow, чтобы опубликовать его здесь, но я нашел здесь свой путь, так что, конечно, другие тоже будут. -Dsun.java2d.opengl=true
сделал текст видимым, хотя сглаживание было чем-то вроде 80-х годов с испорченной палитрой, но затем я получил прозрачно прозрачные части окон, всегда одни и те же части, тщательно скомпонованные, так что не как ошибка драйвера. Заметив, что glxgears также демонстрировался с опрятным прозрачным фоном, когда он был непрозрачным черным на других системах, я нашел вдумчивый и информативный отчет об ошибках против «compton», RGBA windows are always transparent #179. Вдохновленный взглядом на xdpyinfo
, я обнаружил, что мой VNC-сервер предлагает «визуальные эффекты» только глубины 32, то есть визуальные изображения с 8 битами каждый из красного, зеленого и синего и восьми бит альфы. Кажется, Java и glxgears хотят непрозрачный визуальный, поэтому один из глубин 24. Мой обычный: 0 X-сервер имеет это по умолчанию. Для переключателя -depth, man Xtigervnc
говорит: «По умолчанию 24, другие возможные значения - 8, 15 и 16 - все, что может вызвать странное поведение приложений», но Debian's provisional packaging для TigerVNC, в частности в /etc/vnc.conf
и /usr/bin/tigervncserver
, устанавливает его в по умолчанию 32. -depth 24
и внезапно все было красиво снова, с прозрачностью только там, где было запрошено. xdpyinfo
показал множество «визуальных эффектов» в продаже, включая глубину 32.
У меня была проблема с запуском OWASP ZAP на ящике Kali в сеансе tigervnc - окна продолжали оставаться пустыми. Редактирование /etc/vnc.conf для изменения глубины по умолчанию от 32 до 24 зафиксировано. Спасибо, Мартин! – DanM
Спасибо Мартину! Я потратил полдня на эту ошибку ****. Ваш пост спас меня! – guenhter
Та же проблема возникает в XRDP. Измените xrdp.ini (/etc/xrdp/rxrdp.ini) и включите 'xserverbpp = 24' в конфигурации [Xvnc] и [Xorg]. – Wilbert