Java-приложение командной строки и Systray - PullRequest
1 голос
/ 06 февраля 2012

Я пишу Java-приложение, которое полностью без графического интерфейса. Он запускается в терминале через командную строку и все в порядке. Но теперь мне нужно добавить значок в системном трее, чтобы предоставить пользователю некоторые уведомления. Я пытался использовать для этого java.awt.SystemTray и java.awt.TrayIcon. Хотя значок почти работает (оставляя проблемы с внешним видом), моя Mac OS помещает новое окно приложения в Dock, как будто все приложение Swing было запущено.

Итак, вопрос: может ли мое java-приложение без GUI оставаться полностью невидимым, кроме иконки в трее? В Mac OS, Windows и Linux.

Редактировать: я пытался

System.setProperty("apple.awt.UIElement", "true");

Это помогло мне избавиться от иконки Dock, но теперь

    trayIcon.displayMessage("Run!", null, TrayIcon.MessageType.ERROR);

не отображает окно сообщения.

1 Ответ

1 голос
/ 10 февраля 2012

Если он не работает с Swing, возможно, вы можете попробовать SWT: значки в трее и всплывающие подсказки .

...