Создайте комплект приложений OSX для программы Java без интерфейса пользователя, оставаясь в Dock во время работы приложения
Сегодня я попытался создать свой первый комплект приложений OSX для приложения Java. Это работает, но есть одна проблема, и я не мог найти никакого решения для этого.
Приложение Java - это веб-сервер без пользовательского интерфейса. Что происходит, когда я запускаю пакет приложений, следующее:
- Значок приложения несколько раз подпрыгивает в Dock, а затем исчезает (я думаю, потому что графический интерфейс не отображается?).
- Тем не менее, приложение все еще работает. Веб-сервер доступен, и я могу увидеть запущенное приложение в Activity Monitor и остановить его оттуда.
Основная цель этого пакета приложений - предоставить демонстрационное приложение людям, которые заинтересованы в опробовании сервера - без каких-либо настроек и т. Д.
Приложение должно оставаться в Dock, и пользователи должны иметь возможность закрыть (остановить) сервер в Dock.
Я полагаю, что это может быть каким-то образом настраивается в Info.plist, но не имею никакого опыта с этим. Или, возможно, я могу сделать что-то еще, чтобы добиться желаемого поведения?
Спасибо за любые идеи или советы.
1 ответ
Я нашел ответ на эту проблему сегодня:
Я не заметил этого при копировании деталей конфигурации в Jar Bundler от Apple, но у меня было это в параметре VMOptions (файл Info.plist):
<key>Java</key>
<dict>
[...]
<key>VMOptions</key>
<string>-Djava.awt.headless=true</string>
[...]
</dict>
Переходя -Djava.awt.headless=true
к Java VM была проблема. После удаления этого параметра приложение вело себя так, как я хотел. В нем нет окна, но есть простое меню с опцией выхода, так что пользователи могут легко остановить приложение.