Spring Boot benutze SystemTray Icons
Ich richte eine Spring Boot-Anwendung ein und möchte, dass der Host Zugriff auf ein Taskleistensymbol mit Zugriff auf einige Bean-Informationen hat.
Ich habe derzeit versucht, eine Bean für mein SystemTrayIcon mit den @Autowired-Details zu erstellen. Wenn ich jedoch versuche, das SystemTrayIcon hinzuzufügen, erhalte ich die folgende Ausnahme:
Caused by: java.awt.HeadlessException
at java.awt.TrayIcon.<init>(Unknown Source)
at java.awt.TrayIcon.<init>(Unknown Source)
at java.awt.TrayIcon.<init>(Unknown Source)
at hermes.subsrciber.systemTray.HermesTrayIcon.<init>(HermesTrayIcon.java:36)
at hermes.subscriber.boot.AppStarter.trayIcon(AppStarter.java:83)
at hermes.subscriber.boot.AppStarter$EnhancerBySpringCGLIB$c4f80849.CGLIB$trayIcon$3(<generated>)
at hermes.subscriber.boot.AppStarter$EnhancerBySpringCGLIB$c4f80849$FastClassBySpringCGLIB$d62ab0bd.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:312)
at hermes.subscriber.boot.AppStarter$EnhancerBySpringCGLIB$c4f80849.trayIcon(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:166)
... 17 more
Kann eine SpringBoot-Anwendung in irgendeiner Weise auf Taskleistensymbole zugreifen?
Ich glaube, ich KANN es einfach in der Main-Methode (zusammen mit der SpringApplication.run) definieren, aber ich könnte meine Eigenschaften nicht automatisch verdrahten.
Ist dieses Setup möglich?