Как скрыть значок программы Java SWT в Dock, когда приложение находится в лотке

Я знаю, что есть много вопросов, похожих на мои, но на самом деле я не смог решить свою проблему даже после прочтения их всех. У меня есть приложение Java, которое, как только оно запускается, уходит в трей. Проблема в Mac, потому что только там значок находится в панели задач И в док-станции. Я хочу избавиться от иконки Dock.

Я уже сделал ряд испытаний: попробуйте обернуть мою банку в папку ".app" и написать файл Info.plist. Я вставил элемент LSUIElement и установил его на "1" или "true". Это скрывает значок приложения, но показывает уродливый серый значок, похожий на терминал, который остается в терминале.

screen

Скажите мне, даже если у вас есть какие-либо идеи или другие способы обойти это. благодарю вас.

Ответ 1

Возможно, вы используете неправильное имя свойства для того, что хотите. Посмотрите здесь:

https://developer.apple.com/library/mac/#documentation/Java/Reference/Java_PropertiesRef/Articles/JavaSystemProperties.html

Свойство, которое вы хотите установить, я думаю:

"apple.awt.UIElement" (не "LSUIElement" )

Есть два способа сделать это. Вы можете передать:

-Dapple.awt.UIElement="true"

как аргумент виртуальной машины, или вы можете установить свойство в Info.plist как:

<key>Properties</key>
  <dict>
    <key>apple.awt.UIElement</key>
    <string>true</string>
  </dict>