Доступ к дисплею Tanuki Service Wrapper
У меня есть простое Java-приложение, использующее Tanuki Service Wrapper, которое загружает для меня chromedriver. Все работает найти, когда я выполняю вещи, используя ./myapp console
как пользователь, который владеет приложением и сервером VNC.
Однако после настройки RUN_AS_USER
в настройках Tanuki и настройку DISPLAY
переменная в /etc/environment
и все профили в Ubuntu 16.04, мое приложение Java не может получить доступ к дисплею.
Я установил VNC на Ubuntu 16.04, используя эти инструкции.
Я могу запустить xeyes, xterm и т. Д. Как любой пользователь после запуска xhost +
и я гарантирую, что команда запускается при запуске vncserver.
Что происходит, я застреваю в следующем сообщении журнала, прежде чем, наконец, истекло время ожидания:
JVM 1 | Запуск ChromeDriver 2.25.426924 (649f9b868f6783ec9de71c123212b908bf3b232e) через порт 32655
JVM 1 | Разрешены только локальные соединения.
Я также пытался редактировать /etc/chromium-browser/default
файл для включения спецификации --display:1 в CHROMIUM_FLAGS
вариант, как было предложено в других постах, не повезло.
Другой вариант, который я видел, был добавлен в код Java, но это не сработало:
webDriver.setEnvironmentProperty("DISPLAY", ":1");
Какие-либо предложения?
1 ответ
У меня были похожие проблемы в Ubuntu для той же цели. Мы завершили переключение на экземпляр RHEL 7 с TigerVNC.
Мы были под прицелом, чтобы получить что-то выполненное, и в итоге оказались на месте, так как не было никаких проблем, даже во время обновления. Я пытался следовать инструкциям, которые вы предоставили, и у меня возникла та же проблема. Те, за которыми я следил за RHEL, были очень похожи и их можно найти здесь:
Вы можете попробовать использовать TigerVNC в Ubuntu.