Требуется добавить export DISPLAY=:0.0
в файл запуска tomcat и файл запуска пакетного сервера. Это сделано для того, чтобы java увидел библиотеки дисплея X11 в Unix и запустил наш апплет. Без этого экспорта в файлах запуска апплет генерирует исключение без головы.
Хотя этот явный экспорт запускает Java-апплет, он нарушает работу других приложений, работающих на сервере. Есть ли способ, где я могу заставить этот export DISPLAY=:0.0
запускаться из кода Java вместо добавления его в загрузочные файлы? И если это возможно, будет ли это хорошим подходом?
Я уже пытался установить системное свойство на -Djava.awt.headless=true
, но оно не сработало. Как указано в приведенной выше ссылке http://java.sun.com/developer/technicalArticles/J2SE/Desktop/headless/, также сказано, что установка headless = true будет работать только для нескольких компонентов, таких как Canvas, Panel, но не будет работать для компонентов верхнего уровня.
Так что я чувствую, что для меня остается только использовать export DISPLAY=:0.0
. Это заставляет мой апплет работать, когда он установлен в файлах запуска, но вызывает проблемы для других приложений, работающих на сервере. Так что если кто-нибудь может помочь мне заставить export DISPLAY=:0.0
работать так, чтобы он не мешал другим приложениям на сервере. Я думал, что одним из способов является экспорт дисплея через код.
Любая помощь будет принята с благодарностью.